Multiplayer game development announcement - Space Chooter
#1
Multiplayer game development announcement - Space Chooter
Hello everyone,

I started seriously learning how to code in the beginning of the year. I'm proficient in bash, expect and powershell because of work, but I never tried the real deal.

So I started diving into C and learning a bit of OpenGL just as means to visualize my ideas. I thought of writing a benchmarking tool for GPUs, but I found an excellent one that builds fine in any computer I tried, so I dropped that endeavour.

I ended up writing GLPandemic as means to visualize how diseases spread and what would be the threshold for herd immunity depending on vaccine effectiveness and I dropped OpenGL for a while.

However, as I went through the book "Advanced Programming in the UNIX Environment", I realised that I have everything to build a game:

When I did GLPandemic, I got:
- collision tracking against moving objects and scenery
- object status tracking
- random events
- events based on probability

As I dig through the advanced programming book:
- sockets
- network communications
- serial communications
including all the endianness shenanigans.

So hey, why not?

My goals are the following:
- standalone client and server
- hybrid multiplayer (two people in the same room can join the server via serial port and connect to others via internet)
- no textures, so everyone can enjoy
- 20Hz target refresh, so everyone can enjoy, and also to fit on 115200.
- quality toggles to reduce number of polygons and lights, if a slower machine struggles to reach the target.
- big endian default (endianness only affects multiplayer code)
- server only relays players and objects positions, and processes hits, kills and deaths. It's not going to be cheat-proof, but it will be lightweight.
- IRIX and HP-UX using Motif, Mac and Linux using GLUT. I'm hoping to get a Solaris box during the next months.
- No sound, but I will leave blank sound functions as placeholders in the code.

For development, I am using:
- No Google, only asking friends and reading the books. I want to put my brain to work. In case of fatal emergency, I may ask at stack exchange.
- Advanced Programming in the UNIX Environment (I've got all the 3 editions).
- OpenGL programming for the X Window System
- a few C books that I collected during the last year.
- HP's and SGI's OpenGL reference
- Softbench and Apple's XCode
- I wrote a simple build distribution system that I can trigger from my Mac Pro (running remote Softbench on my C8000 via XQuartz). I can trigger remote build from my Mac Pro out to my C8000 and my Octane.

The idea is a simple space shooter (like many during the 90s) supporting around 8 players, and you can hide behind asteroids for cover. I'll write a *very* dumb bot system just to test the code. I'll try to reach a good balance between hunting for other players and, at the same time, use the asteroids to cover while having to dodge them, as they can damage your ship.

Any thoughts?

I'm attaching a screenshot of GLPandemic.


Attached Files Image(s)
   
Shiunbird
Administrator

Trade Count: (1)
Posts: 553
Threads: 45
Joined: Mar 2021
Location: Czech Republic
Find Reply
12-05-2021, 07:01 PM
#2
RE: Multiplayer game development announcement - Space Chooter
Nice. Years ago when I was a teen I learned 68k ASM and I made a simple missle command clone on my Amiga 1200. It never worked properly, I never figured out how to properly time interrupts to Paula to produce sound, and it crashed once your score hit 256 because I stupidly at the time stored things as an unsigned 8-bit integer by default. I unfortunately lost the code when I broke my Powerbook G4

I'm the system admin of this site. Private security technician, licensed locksmith, hack of a c developer and vintage computer enthusiast. 

https://contrib.irixnet.org/raion/ -- contributions and pieces that I'm working on currently. 

https://codeberg.org/SolusRaion -- Code repos I control

Technical problems should be sent my way.
Raion
Chief IRIX Officer

Trade Count: (9)
Posts: 4,240
Threads: 533
Joined: Nov 2017
Location: Eastern Virginia
Website Find Reply
12-05-2021, 07:35 PM
#3
RE: Multiplayer game development announcement - Space Chooter
Your idea of a game sounds like a great way for learning about a lot of topics: C, sockets/networking, computer graphics + OpenGL, game development.

I'm definitely looking forward to the progress and outcome of your adventure.
TruHobbyist
Developer

Trade Count: (0)
Posts: 195
Threads: 21
Joined: May 2018
Find Reply
12-06-2021, 12:37 AM
#4
RE: Multiplayer game development announcement - Space Chooter
@TruHubbyist: That's exactly the idea.

Simple is the name of the game. No scope creep.
And I've heard too many horror stories in handling sound that I will skip it altogether, maybe in the future.

Plus the game is set in space. No sound makes it more realistic. =)))))))
Shiunbird
Administrator

Trade Count: (1)
Posts: 553
Threads: 45
Joined: Mar 2021
Location: Czech Republic
Find Reply
12-06-2021, 08:49 AM
#5
RE: Multiplayer game development announcement - Space Chooter
(12-06-2021, 08:49 AM)Shiunbird Wrote:  Plus the game is set in space. No sound makes it more realistic. =)))))))

Joy
TruHobbyist
Developer

Trade Count: (0)
Posts: 195
Threads: 21
Joined: May 2018
Find Reply
12-06-2021, 09:37 AM
#6
RE: Multiplayer game development announcement - Space Chooter
You might want to consider SDL, the book "Programming Linux Games" is a great reference, I think it's available as a free download these days. The author was commissioned by Loki Software to write the book, John Hall. Tragically he died of malignant melanoma when he was only 24.

Project: Temporarily lost at sea
Plan: World domination! Or something...
vishnu
Tezro, Octane2, 2 x Onyx4

Trade Count: (0)
Posts: 1,245
Threads: 41
Joined: Dec 2017
Location: Minneapolis, Minnesota USA
Find Reply
12-07-2021, 10:40 PM
#7
RE: Multiplayer game development announcement - Space Chooter
I'll look into it.

Funnily enough, I was installing random stuff in HP-UX and came across Xplane, and it's exactly what I want to do, but much more advanced and 2D. I'm resisting the urge to check the source code, but gosh - the thing runs smoothly, and I quickly managed to set a match between my Octane and my C8000. Very impressive, well done and good fun.

https://en.wikipedia.org/wiki/XPilot
Shiunbird
Administrator

Trade Count: (1)
Posts: 553
Threads: 45
Joined: Mar 2021
Location: Czech Republic
Find Reply
12-08-2021, 03:37 PM
#8
RE: Multiplayer game development announcement - Space Chooter
XPilot looks neat, but a new GL based game sounds awesome. Always good to have something new, and good to learn with.

---
Octane2 Octane O2
jenna64bit
O2

Trade Count: (1)
Posts: 35
Threads: 2
Joined: Apr 2020
Location: USA
Find Reply
12-11-2021, 02:12 PM
#9
RE: Multiplayer game development announcement - Space Chooter
(12-07-2021, 10:40 PM)vishnu Wrote:  You might want to consider SDL, the book "Programming Linux Games" is a great reference, I think it's available as a free download these days.

Thanks for the book recommendation, vishnu.  I've downloaded a copy and can't wait to read it.  I've got plenty of programming experience, but not for games.

SGI:  Indigo, Indigo2, Octane, Origin 300
Sun:  SPARCstation 20 (x4), Ultra 2, Blade 2500, T5240
HP:  9000/380, 425e, C8000
Digital: DECstation 5000/125, PWS 600au
jpstewart
Developer

Trade Count: (1)
Posts: 444
Threads: 6
Joined: May 2018
Location: SW Ontario, CA
Find Reply
12-12-2021, 12:55 AM
#10
RE: Multiplayer game development announcement - Space Chooter
Yup - I got it as well. It looks good!
Shiunbird
Administrator

Trade Count: (1)
Posts: 553
Threads: 45
Joined: Mar 2021
Location: Czech Republic
Find Reply
12-12-2021, 07:44 AM


Forum Jump:


Users browsing this thread: 1 Guest(s)