In the City
A text-based adventure game set approximately in Philadelphia in a far-future world.
Currently, the game engine works, the main loop works, and I can read and initialize a set of rooms for the player to explore from JSON.
There are objects in the room which are interactable, all the command words work, there is a menu, there is a character who can join the party, and combat works with adverdarial and neutral NPCs.
Some character names are pulled from things I was watching at the time I made them, and that will change:
- The party member is named chunky [see Tim Robinson sketch. "What do you do???"]
- The neutral character is named Gilear [see D20 Fantasy High for the most neutral character I could think of]
Upcoming Work:
Phase 6: Working Demo
Keep adding individual game elements in a "test data" format.
-
GAME STATE MODIFICATIONS
- Organize all my files (method calls and such, the ordering of methods).
- How does the technologist learn new spells?
- Put a hint in the (room? game state? player inventory?).
- Make sure the hint is usable. Regeneration is the next step.
- Hint command needs to be updated, as does
player.java
useHint
.
- Put timed events in the game.
- Start with hint regeneration.
- How about health regeneration as well?
- Party member health also needs to regen.
- Have some kind of clock tick that calls to random events periodically.
- Or have those events result from player movement. Decide here.
- Can technically change it later.
- If the random events are timed, make sure that you pause that counter in a menu state.
- Go over all todos to make sure you hit all timed events.
- Traps will need to be basically fully redone here.
- Add status effects.
- This is a natural follow-up to having health regen -- some status effects will cause health drain.
- Having just set up some sort of timing system, it makes sense to say "x amount of time or x moves without food causes hunger status."
- Put a morality field in the player object.
- This really doesn't have to do anything yet and is as easy to update as health.
- (When I'm typing this, I haven't begun thinking about coding combat. Maybe health was a nightmare to update, who knows.)
- Put a safe zone in the game (room 1).
- Make the random events that are combat-based not occur in the safe room.
- Make the safe room have an inventory.
- Make trapped items appear in that inventory.
- Figure out how to access it.
- Build out the feature to locate the safe zone.
- This one is a job and a half.
- Could I just say (safe zone is at [coordinates of all adjacencies needed to get to safety?])
- Put an economic zone in the game (at this stage, probably make attic safe and room 1 economic).
- Make the random events that are combat-based not occur in the economic zone.
- Make random barter events.
- Have them only occur in the economic zone.
- (Yes, really. When you're setting up the Metalwoods, is some guy gonna try to sell you a fish while you're fighting the fomorian?)
-
MISC UPDATES
NEXT PHASES
Information:
If you somehow stumbled onto this page and are interested in someday playing a text-based adventure game set in a far-future Philadelphia that draws primary influence from "A Dark Room," "Unsleeping City," and "Annihilation" and is overall kind of a bummer,
don't read anything in the resources folder because it contains significant spoilers.
I'll make the test game playable and include instructions for that much later. Current ETA is probably around 12/25/24