Guiding principles
- A collection of algorithms and approaches to 2d game design and development
- I should probably keep doing some tutorials and trying out different approaches and then document them in here. There are many ways to achieve the same thing
Other places that have lots of good info:
- http://www-cs-students.stanford.edu/~amitp/gameprog.html
- https://heyjavascript.com/roguelike-game-programming-and-development-in-javascript/
Guiding principles
- use as little code as possible to get the job done
- do as little processing as possible
- reuse what you can as much as possible – assets, loaded data, results of calculations etc. (discard only what is necessary to achieve principle 1 & 2)
- “it’s easier to make a fun game fast than it is to make a fast game fun” (Nystrom, 2014)
I think what I am looking for is an APPROACH, rather than an engine…
The approach, for example, could be:
- list out the core functionality
- starting conditions –
- winning conditions – there is no end, just continue to increase score
- losing conditions – getting caught
- player controls
- how do turns work – realtime/turn-based – what are the timeframes?
- what are the variables and changeable bits?
- what are the static elements? – the map/game board
- what are the immutable elements? – trees/rocks/ground
- what are the mutable elements? – supplies/equipment
- what are the dynamic elements? – the hunters – the player – events such as the weather
- what happens in the game loop
- mock up and design the UI/what it looks like
- dimensions
- break down the graphics
- code up the core
- focus on the top 2 or 3 features and get them happening FAST
when coding, it is LIKELY that it should have the following:
- a game loop (play/update)
- ‘active’ or
- ‘turn-based’ or
- a mix for different sections (an example is Chrono Trigger)
- a means to load the assets (load/preload)
- a means to set up the game (setup/create)
It was reading
Selecting solutions
What do you need it to do? How much data does it need? Is that data already available, or available in a different form that can then be adapted?
References
Nystrom, R. (2014). Architecture, Performance, and Games · Introduction · Game Programming Patterns. https://gameprogrammingpatterns.com/architecture-performance-and-games.html
Open chars
https://silveiraneto.net/2010/05/19/openpixels-%E2%80%93-chars/Open in gimp – http://silveiraneto.net/downloads/open_chars.xcf
Docs to include
- APESHIP
- Game Design Challenges
- Phaser
- Game analysis – Zelda – A Link To The Past
- Overworld Overload: An Analysis of Link to the Past’s Light World, Part 1
- PTTLA
- game design
- undertow – where the bits fit
- the utone how to booky howtome
- for the project stuff, stick around~ undertone core GANTT CHART
- for all technical and technique stuff, go here > The Knowledge
- for all game design theory etc, go here > game design
- for info about pizza legends go here – Pizza legends
- gitlab stuff > git workflow
- stuff about pixel graphics > Pixely
- stuff about web audio > web audio
- CS50
- python games
- Tiles
- 1-bit GODOT
- godot
- godot game engine
- Mobile app dev in Godot
- JSRPG
- Pizza Legends
- wispgard
- web game dev
- platformers
- roguelike