{"author_link":"\/users\/steve-johnson","author_name":"Steve Johnson","author_uid":"steve-johnson","comments":[],"epoch":1494821588,"event":"LD38","format":"md","ldjam_node_id":31161,"likes":3,"metadata":{"p_key":"93579","p_author":"Steve Johnson","p_authorkey":"1010500","p_urlkey":"306497","p_title":"Rogue Basement annotated source code","p_cat":"LDJam ","p_event":"LD38","p_time":"1494821588","p_likes":"3","p_comments":"0","p_status":"WAYBACK","us_key":"1010500","us_name":"Steve Johnson","us_username":"steve-johnson","event_start":"1492732800","event_key":"69","event_name":"LD 38"},"node":{"_collation":{"body_sanitizer":"TextUtils::SanitizeHTML via existing importer","event":"LD38","removed_author":false},"_superparent":9405,"_trust":3,"author":10500,"body":"I took the time to extensively comment my entire game. I ended up with 885 lines of comments (wrapped at 80 characters!) for 1,570 lines of code. The code is pretty good for a 48-hour game and might give you a starting point for writing your own roguelike.\n\nTopics covered:\n\n* Python 3 in general\n* Scene management\n* Efficient drawing with BearLibTerminal\n* Level generator with BSP trees\n* Strategies for storing and using data\n* Flexible system for simulation and AI\n* Using pyglet for music and not graphics\n* FoV using recursive shadowcasting via clubsandwich (post-compo)\n\n![Screenshot 2017-05-14 21.16.30.png](\/\/\/raw\/409\/2\/z\/456a.png)","comments":0,"created":"2017-05-15T04:08:40Z","files":[],"files-timestamp":0,"id":31161,"love":3,"love-timestamp":"2019-08-02T14:02:53Z","meta":[],"modified":"2019-08-02T14:02:53Z","name":"Rogue Basement annotated source code","node-timestamp":"2017-05-15T04:16:56Z","parent":16318,"parents":[1,5,9,9405,16318],"path":"\/events\/ludum-dare\/38\/rogue-basement\/rogue-basement-annotated-source-code","published":"2017-05-15T04:13:08Z","scope":"public","slug":"rogue-basement-annotated-source-code","subsubtype":"","subtype":"","type":"post","version":83239},"node_metadata":{"n_key":"31161","n_urlkey":"306497","n_parent":"16318","n_path":"\/events\/ludum-dare\/38\/rogue-basement\/rogue-basement-annotated-source-code","n_slug":"rogue-basement-annotated-source-","n_type":"post","n_subtype":"","n_subsubtype":"","n_author":"10500","n_created":"1494821320","n_modified":"1564754573","n_version":"83239","n_status":"WAYBACK"},"source_url":"https:\/\/ldjam.com\/events\/ludum-dare\/38\/rogue-basement\/rogue-basement-annotated-source-code","text":"I took the time to extensively comment my entire game. I ended up with 885 lines of comments (wrapped at 80 characters!) for 1,570 lines of code. The code is pretty good for a 48-hour game and might give you a starting point for writing your own roguelike.\n\nTopics covered:\n\n* Python 3 in general\n* Scene management\n* Efficient drawing with BearLibTerminal\n* Level generator with BSP trees\n* Strategies for storing and using data\n* Flexible system for simulation and AI\n* Using pyglet for music and not graphics\n* FoV using recursive shadowcasting via clubsandwich (post-compo)\n\n![Screenshot 2017-05-14 21.16.30.png](\/\/\/raw\/409\/2\/z\/456a.png)","title":"Rogue Basement annotated source code","wayback_source":[]}