Skip to content

Latest commit

 

History

History
144 lines (117 loc) · 8.6 KB

File metadata and controls

144 lines (117 loc) · 8.6 KB

Nerdcraft

ASCII art 2D sandbox/survival inspired by Terraria. Have any suggestions? Please submit them here

Current Features

  • Procedural world generation with biome support
    • Biome smoothing/blending (surface_roughness, biome_size_weight, blend fraction)
    • Blended biome border materials for smoother transitions
  • Save/load system with named save slots
  • Main menu with configurable ASCII header (config/menu.json)
    • Generate new world
    • Load saved world
    • World-size selection (Small/Medium/Large)
    • World generation progress screen with percentage
  • Mining, placement, inventory, hotbar, crafting
  • JSON-driven items, tools, weapons, armor, mobs, recipes, biomes, colors, controls
  • Tiered progression (tools/weapons/armor)
  • Auto-jump (player + mobs)
  • Day/night cycle, night spawns, torch lighting
  • Water systems (first pass)
    • Swimming
    • Local water flow simulation
    • Breath / drowning
  • Mobs with data-driven AI and drops

Screenshot

♥ 39                                                    1[/] 2[T] 3[=] 4[#] 5

                                          ==
&&&                                      =##=
&&&&                &&                  =#  #=
&&&&&             &&&&&                =#    #=
& &&&&           &&&&&&&&             =#      #=
 |               &&&&&&&&            =#        #=        K
                    |                 #        #
                    |                 #        #        ##WW#####WWWWWWW###WWWWWWWW
#############       |       ####      |   @    #      ####WW#####WWWWWWW###WWWWWWWW
############################################## ###########WW#####WWWWWWW###WWWWWWWW
##############################################  ##########WW#####WWWWWWW###WWWWWWWW
###############################################  #########WW######WWWWWW##WWWWWWWWW
################################################  ########ZW#######WWWWWWWWWWWWWWWW
#################################################  ################################
##################################################  ###############################
###################################################  ##############################
####################################################  #############W###############
#####################################                 ###########WWWW##############
###############WWWWW############################################WWWWWW#############
################WWW############################################WWWWWWWW############
 ✓ World saved!  |  A/D:Move  W:Jump  Space:Use  1-5/E/R:Hotbar  I:Inv  C:Craft

Controls

  • A / D (or arrows): move
  • W (or up): jump / swim stroke
  • Space: use selected hotbar item
    • Consumables/armor use immediately
    • Tools/weapons/blocks/fist: directional use (press direction next)
  • 1..5: select hotbar slot
  • E / R: next/prev hotbar slot
  • I or Tab: inventory
  • C: crafting
  • Q / Esc: quit

How to Play

Basic loop

  • Start a new world from the main menu
  • Gather nearby wood, stone, coal, and food
  • Put useful blocks/items on your hotbar
  • Craft a workbench to unlock more recipes
  • Build shelter before night, because hostile mobs spawn after dark
  • Upgrade from fists to tools, swords, bows, spears, armor, torches, and utility blocks

Survival tips

  • Space uses the selected hotbar item
    • consumables and armor use immediately
    • tools, weapons, blocks, and empty-hand actions wait for a direction key
  • Use torches to light up areas at night
  • Water can be swum through, but you can still run out of breath underwater
  • Spiders drop silk, which can be crafted into string which can be used to make a bow
  • Bows attack in a straight line at long range, while spears trade damage for reach
  • Doors only allow the player to pass through them
  • Underground fog hides undiscovered tiles below a configurable depth threshold

Progression snapshot

  • Wood and stone get you started
  • Coal fuels smelting
  • Iron and gold are processed at the forge
  • Diamond gear is the current top tier
  • Armor is split into helmet, chestpiece, and pants

Running

python3 main.py

CLI options(Optional, as the game now has a main menu):

python3 main.py --seed 123 --save myworld --new
  • --seed: world seed
  • --save: save slot name
  • --new: force fresh generation

Configuration

Core files in config/:

  • game.json – world/physics/water/save/day-night/underground fog
  • blocks.json – block defs + mining tiers
  • items.json – item defs + classes/stats/colors
  • mobs.json – mob defs, timings, movement speed, drops, spawn rules
  • recipes.json – crafting recipes
  • biomes.json – biome generation rules/blending
  • menu.json – main menu labels + ASCII header
  • input.json – key bindings
  • ui.json – UI strings/layout
  • engine.json – engine timing knobs
  • block_behaviors.json – on-mine drop behaviors

Detailed schemas: see CONTENT_FORMAT.md.

License

This project uses a custom Attribution + Non-Commercial license.

  • You may use, modify, and redistribute the code with attribution.
  • Commercial use requires prior permission from the project owner.

See LICENSE for full terms.

Docs

  • Architecture: ARCHITECTURE.md
  • Roadmap: PLAN.md
  • Task tracker: TASKS.md
  • Config progress audit: CONFIG_AUDIT.md