Sorry if this is not the most suitable place to post this, I read the FAQs, but this is my first post here so I won't get mad if this gets removed.
I have written many, many ideas for a text-based game that's suppose to contain(in total) a LOT of text(dozens of thousands of words in total) and rather little mechanics.
And after already trying to start programming it in both of #C and as a web (with HTML), I think I need help in getting general ideas on how to program it, because I'd prefer to avoid hundreds of hours in every single programing languange I know just because I currectly have no idea while program is best to use to develop the game.
Here is a list of serveral core elements in my game, and how I already thought to try to program some of them:
- The main "game mode" is a maze, which is like a trivia game(althought it's not) - you need to choose between serveral answers, one of them advances you into the maze, the rest lead to a dead end ("game over"), or trap the player into a poistion where they are 2 or more dead ends.
- Of course, every maze has serveral "checkpoints"(each checkpoint is a different "position" in the maze, including dead ends and exists). And I have written mazes which have each checkpoint in a text file. So every maze is currectly presented with many text files, and obviously, I need them all in one program. I thought of writing every maze in a XML file which will refer to all textfiles, but I doubt it can work..
- The player has different categories of points, and each category has 2 "sub categories" of points: "negative" points and "positive". and an overall ranking based on all the points the player has, that has a simple math formula, and updates with every update in any of the player's points in any catergory. I think all of this can done with very very easily with #C, by creating an object for the player, containing properites which will have the values of the points and his ranking.
- The points are updated while the player is in the maze - when he reaches a dead end, he "gains" negative point/s for one or more catergories, and when he gets out of the maze, he gains poisitive point/s for one or more categories.
- The mazes are attached to different diffculty levels(1-5) and only the easiest ones can be accessed by the player at the start.
- Winning a game will always unlock another game + abillity to view textfiles that give the player clues and explainitonts (and are necessary for another game mode, which I will explain now):
- The game mode I called "hardcore game mode", is when the player goes throught a maze he already won at with the "normal game" mode, but this time, he needs to solve much more diffcult problems in it to progress, and the soultions have clues in the textfiles from the previous section. Each of them is unlocked by winning a game in the normal game mode.
- There are also bonus levels that sometimes will "jump", when a player exists from a maze. Each of the bonus levels are also like mazes and written in mulitplie text files. Bonus levels also add to one of the points categories when the player wins at them. The player only has 1 chance of completing each bonus level - if he fails, he will immediately be explained how he could've been - and not be able to gain the points he didn't get from the bonus levels where he lost. Bonus levels can't add negative points.
- There will be a main meun, where the player might access:
a. normal game mode
b. hardcore game mode
c. Clues and explainitons for the games (entering this only leads to readable text files, that I categorized in different folders)
d. Game instructions (same as the previous section)
I'm quite unsure what to use for this. There are free programs to create simple text-based games, like inform7, but they may not contain enough tools to do all this. #C is what I'm best with, but it's proably not the most suitable program to create a text based game with all those element.
What do you think is the best way for me to create the game? I already have enough textfiles for anything (althought I'll continue adding more anyway), and I'm not sure how to program it.