Somone is making a Hacking Game

Anything and Everything about Uplink

Moderators: jelco, bert_the_turtle, Chris, Icepick, Rkiver

WarlockD
level1
level1
Posts: 14
Joined: Sat Jul 05, 2003 7:58 am
Location: Arlington, TX
Contact:

Postby WarlockD » Sat Jul 05, 2003 8:06 am

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.)
User avatar
sweaty bob
level5
level5
Posts: 1852
Joined: Fri Aug 23, 2002 7:30 pm
Location: England , Devon
Contact:

Postby sweaty bob » Sat Jul 05, 2003 9:40 am

Dont have a clue ask some1 else.
Image
exosyphen
level2
level2
Posts: 240
Joined: Wed Jul 02, 2003 8:14 am
Location: Romania
Contact:

Postby exosyphen » Sat Jul 05, 2003 10:49 am

Hi,

I am working on a hack sim, and I have one done already.

My suggestion ... use DirectX for graphics ... it's not that hard once you get used with it.

OpenGL is for 3D graphics mostly :)
coolsi
level5
level5
Posts: 3990
Joined: Wed Apr 10, 2002 6:46 pm

Postby coolsi » Sat Jul 05, 2003 10:57 am

Quote: from sweaty bob on 9:40 am on July 5, 2003[br]Dont have a clue ask some1 else.

Don't bother posting then...
Nakatomi is coming
FrostShard
level5
level5
Posts: 1664
Joined: Thu Mar 13, 2003 10:37 pm
Location: Scotland. Och aye the noo, and all that.
Contact:

Postby FrostShard » Sat Jul 05, 2003 11:24 am

That's funny, i was just thinking that.  Oh wait, this post was pointless too.  damn.
Rkiver wrote:So as you see, the average person is a fucking idiot.
WarlockD
level1
level1
Posts: 14
Joined: Sat Jul 05, 2003 7:58 am
Location: Arlington, TX
Contact:

Postby WarlockD » Sat Jul 05, 2003 5:37 pm

Heh, thanks for the suggestions then.
exosyphen :  Nono, I want something deaper, something that would be a large experence people would spend months on, or atleast a few hours a week.

Thats the kind of suggestions I am looking for:P
User avatar
Starfyre
level5
level5
Posts: 3247
Joined: Sat Jun 29, 2002 3:00 pm
Location: in the tree house

Postby Starfyre » Sat Jul 05, 2003 5:53 pm

Then get a development team. Whipping something like that up on the fly is pretty damn hard...
WarlockD
level1
level1
Posts: 14
Joined: Sat Jul 05, 2003 7:58 am
Location: Arlington, TX
Contact:

Postby WarlockD » Sat Jul 05, 2003 6:24 pm

Heh, well I don't expect it to be easy.

Honstly, its not that hard to do if you put your mind to it.  Though to make something like Uplink would take bymyself years.  I am just looking for something simple now and getting some ideas to code.
User avatar
Iris
level5
level5
Posts: 2423
Joined: Wed Apr 09, 2003 6:15 am
Location: Land of the Morning Calm

Postby Iris » Sun Jul 06, 2003 5:18 am

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?
Image
ODDin
level5
level5
Posts: 2521
Joined: Fri Jul 04, 2003 10:44 pm
Location: Haifa, Israel
Contact:

Postby ODDin » Sun Jul 06, 2003 6:28 pm

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.
bgreene2001
level5
level5
Posts: 1310
Joined: Sat Dec 22, 2001 3:46 pm
Location: Melbourne, Australia

Postby bgreene2001 » Sun Jul 06, 2003 7:09 pm

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?
User avatar
NeoThermic
Introversion Staff
Introversion Staff
Posts: 6256
Joined: Sat Mar 02, 2002 10:55 am
Location: ::1
Contact:

Postby NeoThermic » Sun Jul 06, 2003 7:34 pm

ODDin:
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)
Darksun
level5
level5
Posts: 6461
Joined: Sat Dec 07, 2002 7:08 pm
Location: 127.0.0.1

Postby Darksun » Sun Jul 06, 2003 7:38 pm

/me blinks
ODDin
level5
level5
Posts: 2521
Joined: Fri Jul 04, 2003 10:44 pm
Location: Haifa, Israel
Contact:

Postby ODDin » Sun Jul 06, 2003 8:20 pm

Thanks for the code. I'll tell you about the results when I'll try it out.
(and I did use DirectX 8 for VB)

By the way - anything from WarlockD about the main part of my post?..
ODDin
level5
level5
Posts: 2521
Joined: Fri Jul 04, 2003 10:44 pm
Location: Haifa, Israel
Contact:

Postby ODDin » Sun Jul 06, 2003 8:23 pm

exosyphen:
I watched the web site about your games. i read about blue sky, and I've seen it's pretty different from uplink. But can you please tell more details about it? Maybe it'll give even to me some ideas, here and there...

Return to “General”

Who is online

Users browsing this forum: No registered users and 34 guests