SoftbearStudios / kiomet

Kiomet.com real-time strategy game
https://kiomet.com
GNU Affero General Public License v3.0
76 stars 12 forks source link

Not an Issue, Need guidance #2

Closed crizmo closed 11 months ago

crizmo commented 11 months ago

I want to learn game development, ( wish to make something like this strategy game). Tho i don't know how i should go about it If you don't mind can you guide me though. Like what i should do / how i should learn ?

Thanks !

finnbear commented 11 months ago

Edit: anyone who followed a link here should go here instead!


Hi there!

Before learning how to develop a game, start a list of game ideas. Whenever you think of a new idea, put it on the list. By the time you learn how to develop a game, you'll have a lot of ideas to choose from.

Then, I personally recommend the following steps to advance your programming abilities:

  1. Become proficient in scratch.mit.edu (covers sprites, game loops, animations without difficult graphics code. may take a few weeks.)
  2. Make a text-based game in Java or C# (covers simple programming concepts. may take a few weeks.) based on your GitHub profile, you can skip this step
  3. Make a visual game with Javascript & HTML5 canvas (covers web programming, graphics. may take a few weeks.)
  4. Watch programming and game design tutorials on YouTube i.e. for inspiration
  5. Pick a graphics/game framework or game engine and learn it. Options include Three.js, Unity, pixi.js, etc.
  6. If applicable, research hosting options such as static website hosting or cloud servers and protocols such as WebSockets. Experiment with a simple client-server chat app (examples of that are available for nearly every protocol)
  7. Start putting the pieces together to make a simple game that works (may take a few months)
  8. If you enjoy the above, and are a student, consider enrolling in computer science (or adjacent engineering/art) courses if applicable (may take a few years)
  9. Keep making more projects, each progressively more significant (can repeat this as long as you like)

Making a game usually requires art, which you can either create yourself ("programmer art"), use placeholders from the internet (may have legal implications if you ever release), or pay someone else to create (e.g. fiverr.com). To give you an idea, we create most of our own art, with the exception of certain logos, material textures, and all background music.

If this is something you want to do, I also recommend searching for advice from others. My advice is limited by my own experiences.

crizmo commented 11 months ago

Thanks a lot ! I'm almost done with my bachelors and will be moving to masters. [ in cs ] Pretty confident with my overall js knowledge but have never made a game before with it. Ill keep all that in mind !

Also do u suggest working on game with js or learning rust or a proper oop language ?

finnbear commented 11 months ago

Your first games should be in a language or platform you are comfortable with. I don't recommend OOP for the sake of OOP but it can get you started (and you'll almost certainly use it for the frontend). Rust is good if you have a successful game and want to spend a year making it slightly faster, more reliable, and more maintainable 😉

crizmo commented 11 months ago

Alrighty , Thanks !