Somone is making a Hacking Game
Moderators: jelco, bert_the_turtle, Chris, Icepick, Rkiver
Well, after playing Uplink for 16 hours streight, I realized that it would be great if I made a hacking game.
Hell, lets even make it an online hacking game!
Now for the good part, I CAN CODE! Thats right, as I speak, I am about 75% of the way though coding how people connect up to servers and how they save, delete files. Now I have hit a snag.
See, I always wanted to make my own game, but I just get SO frustrated at programing graphics. Its not the art, its the headache of screwing with DirectX or god help me OpenGL. So the idea for me is to make a TEXT only version of this game.
The problem is, that I have a good 10-20% of the core coded, and I havn't a clue where to go. Should I implment an experence point system? How should money work? How would guilds work? Should I set up some kind of scripting lauguage, or just tell people to type 'create virus.c' and depending on your skill level you make one.
So I kind of need input.
(PS. Oh and I am programing it in C#. This way when I am finished, I can turn it to a C++ program in no time.)
Hell, lets even make it an online hacking game!
Now for the good part, I CAN CODE! Thats right, as I speak, I am about 75% of the way though coding how people connect up to servers and how they save, delete files. Now I have hit a snag.
See, I always wanted to make my own game, but I just get SO frustrated at programing graphics. Its not the art, its the headache of screwing with DirectX or god help me OpenGL. So the idea for me is to make a TEXT only version of this game.
The problem is, that I have a good 10-20% of the core coded, and I havn't a clue where to go. Should I implment an experence point system? How should money work? How would guilds work? Should I set up some kind of scripting lauguage, or just tell people to type 'create virus.c' and depending on your skill level you make one.
So I kind of need input.
(PS. Oh and I am programing it in C#. This way when I am finished, I can turn it to a C++ program in no time.)
- sweaty bob
- level5
- Posts: 1852
- Joined: Fri Aug 23, 2002 7:30 pm
- Location: England , Devon
- Contact:
-
- level5
- Posts: 1664
- Joined: Thu Mar 13, 2003 10:37 pm
- Location: Scotland. Och aye the noo, and all that.
- Contact:
well, you can always check the previous threads made under this forum or on 'The Future' to get enough suggestions to make out a book on its own. i just hope yours wouldn't end up half-baked or shelved after a couple of runs, because getting ideas is the easy part, coding, implementing and making sure that they satisfy other players is the hard one. i'm sure you wouldn't want to play this by yourself, would you?
You know, I'm also making a hacking game. In Visual Basic 6, however. i only did a small part, but you can take a look at my ideas at "The Future" forum. A topic I started. You can freely use the ideas if you'd like.
By the way, I also decide not to mess with DirectX. I tried to use it to simply change the screen resolution, and you know what?
It only worked sometimes, after few restarts, and when it finally did work, it led the system to a nice blue screen.
So I'm also doing it "Text-Only" (with some squares here and there... That's actually the reason why i chose this game - you DON"T NEED graphics...
By the way, if anybody can help me with the DirectX, I'll appriciate it.
By the way, I also decide not to mess with DirectX. I tried to use it to simply change the screen resolution, and you know what?
It only worked sometimes, after few restarts, and when it finally did work, it led the system to a nice blue screen.
So I'm also doing it "Text-Only" (with some squares here and there... That's actually the reason why i chose this game - you DON"T NEED graphics...
By the way, if anybody can help me with the DirectX, I'll appriciate it.
-
- level5
- Posts: 1310
- Joined: Sat Dec 22, 2001 3:46 pm
- Location: Melbourne, Australia
I might be able to put you in touch with a friend whose doing a com/sci degree in Games Design.. I think he's done some DirectX stuff.
I swear Officer, I didn't know she was 4!
My Profile, my mates site, Bloody Mongrel. Great stuff.
Click here to help me get some free magnets Pleeeease?
My Profile, my mates site, Bloody Mongrel. Great stuff.
Click here to help me get some free magnets Pleeeease?
- NeoThermic
- Introversion Staff
- Posts: 6256
- Joined: Sat Mar 02, 2002 10:55 am
- Location: ::1
- Contact:
ODDin:
Project -> refrences.
find DirectX 8 for Visual Basic type Libary and add it.
add this code:
[not 100% mine, but about 70% is]
Hope that helps for basic stuff...
NeoThermic
(Edited by NeoThermic at 10:02 pm on July 6, 2003)
Project -> refrences.
find DirectX 8 for Visual Basic type Libary and add it.
add this code:
[not 100% mine, but about 70% is]
Code: Select all
Dim Dx As DirectX8 'The master Object, everything comes from here
Dim D3D As Direct3D8 'This controls all things 3D
Dim D3DDevice As Direct3DDevice8 'This actually represents the hardware doing the rendering
Dim bRunning As Boolean 'Controls whether the program is running or not...
Private Declare Function GetTickCount Lib "kernel32" () As Long 'This is used to get the frame rate.
Dim LastTimeCheckFPS As Long 'When did we last check the frame rate?
Dim FramesDrawn As Long 'How many frames have been drawn
Dim FrameRate As Long 'What the current frame rate is.....
' Initialise : This procedure kick starts the whole process.
' It'll return true for success, false if there was an error.
Public Function Initialise() As Boolean
On Error GoTo ErrHandler:
Dim DispMode As D3DDISPLAYMODE 'Describes our Display Mode
Dim D3DWindow As D3DPRESENT_PARAMETERS 'Describes our Viewport
Set Dx = New DirectX8 'Create our Master Object
Set D3D = Dx.Direct3DCreate() 'Make our Master Object create the Direct3D Interface
'The next few lines are commented out. Un-comment them to use the app in windowed mode...
'D3D.GetAdapterDisplayMode D3DADAPTER_DEFAULT, DispMode 'Retrieve the current display Mode
'D3DWindow.Windowed = 1 'Tell it we're using Windowed Mode
'D3DWindow.SwapEffect = D3DSWAPEFFECT_COPY_VSYNC 'We'll refresh when the monitor does
'D3DWindow.BackBufferFormat = DispMode.Format 'We'll use the format we just retrieved...
'[end of windowed mode]
'We are going to use fullscreen. If you use windows mode, comment the next lot of lines out...
DispMode.Format = D3DFMT_X8R8G8B8
DispMode.Width = 640
DispMode.Height = 480
D3DWindow.SwapEffect = D3DSWAPEFFECT_FLIP
D3DWindow.BackBufferCount = 1 '1 backbuffer only
D3DWindow.BackBufferFormat = DispMode.Format 'What we specified earlier
D3DWindow.BackBufferHeight = 480
D3DWindow.BackBufferWidth = 640
D3DWindow.hDeviceWindow = frmMain.hWnd
'[end of fullscreen code]
'This line creates a device that uses a hardware device if possible; software vertex processing and uses the form as it's target
Set D3DDevice = D3D.CreateDevice(D3DADAPTER_DEFAULT, D3DDEVTYPE_HAL, frmMain.hWnd, D3DCREATE_SOFTWARE_VERTEXPROCESSING, _
D3DWindow)
Initialise = True 'We succeeded
Exit Function
ErrHandler:
'We failed; for now we wont worry about why.
Debug.Print "Error Number Returned: " & Err.Number
Initialise = False
End Function
Public Sub Render()
'1. We need to clear the render device before we can draw anything
' This must always happen before you start rendering stuff...
D3DDevice.Clear 0, ByVal 0, D3DCLEAR_TARGET, &HCCCCFF, 1#, 0
'the hexidecimal value in the middle is the same as when you're using colours in HTML - if you're familiar
'with that.
'2. Next we would render everything. This lesson doesn't do this, but if it did it'd look something
' like this:
D3DDevice.BeginScene
'All rendering calls go between these two lines
D3DDevice.EndScene
'3. Update the frame to the screen...
' This is the same as the Primary.Flip method as used in DirectX 7
' These values below should work for almost all cases...
D3DDevice.Present ByVal 0, ByVal 0, 0, ByVal 0
End Sub
Private Sub Form_Click()
bRunning = False
End Sub
Private Sub Form_Load()
Me.Show 'Make sure our window is visible
bRunning = Initialise()
Debug.Print "Device Creation Return Code : ", bRunning 'So you can see what happens...
Do While bRunning
Render 'Update the frame...
DoEvents 'Allow windows time to think; otherwise you'll get into a really tight (and bad) loop...
'Calculate the frame rate; how this is done isn't greatly important
'So dont worry about understanding it yet...
If GetTickCount - LastTimeCheckFPS >= 1000 Then
LastTimeCheckFPS = GetTickCount
FrameRate = FramesDrawn 'Store the frame count
FramesDrawn = 0 'Reset the counter
Me.Caption = "DirectX-Graphics: {" & FrameRate & "fps}" 'Display it on screen
Debug.Print FrameRate & "fps" 'If we're in fullscreen mode we cant see the caption...
End If
FramesDrawn = FramesDrawn + 1
Loop 'Begin the next frame...
'If we've gotten to this point the loop must have been terminated
' So we need to clean up after ourselves. This isn't essential, but it'
' good coding practise.
On Error Resume Next 'If the objects were never created;
' (the initialisation failed) we might get an
' error when freeing them... which we need to
' handle, but as we're closing anyway...
Set D3DDevice = Nothing
Set D3D = Nothing
Set Dx = Nothing
Debug.Print "All Objects Destroyed"
'Final termination:
Unload Me
End
End Sub
Hope that helps for basic stuff...
NeoThermic
(Edited by NeoThermic at 10:02 pm on July 6, 2003)
Who is online
Users browsing this forum: No registered users and 34 guests