Skip to main content

What does a good game consist of? (part 37)

Challenging additional content

Additional content here implies unlockable boss levels, medals,
collectibles and trophies, not only (buyable) downloadable content.
Additional content makes a good game replay able, so you can beat it

multiple times. If you ever played Shadow Labyrinth on Steam, you'll
probably want to play the game again if you beaten it. The game is
very hard to play and finish, and that's exactly why it's worth playing

again. There's no problem with making a hard game, but additional
difficulty challenges keep the players playing for a lot longer time
and difficulty makes a game worth playing longer, in fact a lot

longer.  Many players play idle clickers instead, because of being
dead sick of hard games. What is the actual truth however is that
hard games a great teachers of cunningness and life. It feels damn

freaking good to beat a tough challenge. Additional challenges
therefore come very handy when making a hard, exciting game. Making
a good and a hard game is a not an easy task either. But insane

challenge in games is most rewarding.

story mode        |beat the main game
challenge           |find all unlocks
trial                   |beat all additional boss levels

Example challenges:

story mode             |finish all quests
challenge                |finish all quests, the timer challenge
trial                        |beat all quests hardcore(perma death)

The good thing here is also you can extra money making hard to beat
DLC(downloadable content). This means new game modes, that are tier 2.
Or not a basic, starting challenge level, put in other words. Works

great on steam platform.

Comments

Popular posts from this blog

object oriented programming

Object oriented programming is a sound and bold approach to c++ and internet wiring application and video games. It reduces a lot of code messes, made by global and half global functions. One of the more advanced object programming techniques are private access, poly morph and object message inheritance. It is set by c++ bjarne stroustrup and iso isometric standard convention comitee to use classes instead of structs and structures for making objects. Which means you most definitely should , but not must or have to. class Monster {     std::string memory_attributes{}; public:     void treck();     void track();     void trace(); }; The treck() function makes the monster roam and do human like jogging and trimming. track() means the monster goes ai path tracking and trace() means it tries to find other monsters in the area. class Weapon {     std::string memory_attributes{}; public:    void use(); }; void Weapon::use() {   ...

object render, part 4

Object is either two dimensional, or three dimensional. Even abstract ones. People imagine c++ game objects as a part of a class on a graph chart, to understand the game and development mechanics. But they are really two dimensional, iso metric or three dimensional. They can be seen on the level or the level map, in other words, about 90% of used classes. Even server objects can be seen on the game, if there is any blue print or underlying real world net working mechanism. So in other words, the class objects can be used in game. They have to be dimensional. //PvE class Monster {     std::vector<int>  head_memory{};     std::vector<int> body_particles{}; public:     int get_memory(int element);     int get_particles(int element);     int get_head_memory_size();;     int get_body_particles_size(); }; Monster's head memory is used for AI render, the body particles list is used for rendering. 60 frames per second...

object render, part 3

 Making a object requires a class call, but also has to be rendered. Monster monster{}; monster = new Monster[10]; void render_monster(Monster* monster_array); The iso c++ standard says you should use classes for making objects, not structs(structures). Considering it is a standard.  With emphasis on  should , not  must . It is a standard, not a coding rule. It was set forth by iso commitee and bjarne stroustrup. Polymorphism allows us to make multiple monster arch map types. virtual void render_monster(std::string map_name, int type=0); Atch map is a data map about what all is happening in the game, like for example campaign map. It allows making archetypes. monsters, for more efficient run time memory and pointers managing bugs and random access memory. Random access memory can hold quite many objects. class BackPack {     std::string inventory_node{}; };