An existential western RPG about semi-conscious GPT agents. Written in a 3d engine from scratch targeting Wasm/Webgl and Desktop https://playgpt.io
You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 
Cameron Murphy Reikes 4584b5a1ee Make Raphael significantly more aggressive 1 year ago
.vscode Successfully compile under Wall, better drama story, ability to holster shotgun, other improvements 1 year ago
art Character death logic, shotgun assassination works, death animation, death screen 1 year ago
assets Make Raphael significantly more aggressive 1 year ago
marketing_page Somewhat working payment system without saving 2 years ago
server Server generation logging happens in chunks, no longer interwoven so much easier to read 1 year ago
thirdparty Check in sokol shader compiler 1 year ago
.gitattributes Exporter -> separate file, fix codegen, don't ignore .pn files 2 years ago
.gitignore Checkin the zipped blend file, it's 5x smaller, better for git lfs.... 1 year ago
10x.10x Switch to AI server, better UX for when server down 1 year ago
CMakeLists.txt Convert to 4 space indentation to try out CLion 2 years ago
LICENSE Initial commit 2 years ago
README.md Placed entities -> own collection to avoid asset meshes being placed entities. Add shotgun art 1 year ago
Session.vim Fix y coord sorting popping on extreme y coords 2 years ago
assets.mdesk Add man in black and more drama 1 year ago
better_assert.h Make custom assert work in wasm 2 years ago
buff.h Deserialize bones in one chunk, slice iter macro 1 year ago
build_and_run_remedy.bat Make much easier for other people to build and work on 2 years ago
build_desktop_debug.bat Successfully compile under Wall, better drama story, ability to holster shotgun, other improvements 1 year ago
build_web_common.bat Web fixes... 2 years ago
build_web_debug.bat More tools to figure out why it's so laggy on web build 2 years ago
build_web_release.bat HACK disable optims on release web because of release only bug, maximize 2 years ago
character_info.h Convert several if() else assert(false) into switches so it warns and errors on compile time 1 year ago
codegen.c Successfully compile under Wall, better drama story, ability to holster shotgun, other improvements 1 year ago
credits.txt Add credits for posterity 1 year ago
do_ctags.bat Fix ctags in main file 1 year ago
elements.mdesk ChatGPT generation/parsing functions 2 years ago
level design document.png Initialize git lfs, 3d asset exporting and loading, debug rendering 2 years ago
main.c Convert several if() else assert(false) into switches so it warns and errors on compile time 1 year ago
make_training_prompt.txt Buff iteration by index macro 2 years ago
makeprompt.h Convert several if() else assert(false) into switches so it warns and errors on compile time 1 year ago
maketraining.c Rename 2 years ago
openai_cmdline_notes.txt Conver training to metadesk, add metadata. Writing 2 years ago
playgippity.png Initialize git lfs, 3d asset exporting and loading, debug rendering 2 years ago
profiling.h stb_ds ubsan, keyboard shortcuts for speak/give item, custom assert 2 years ago
quad.glsl Add 3d outline rendering, combine 3d and 2d shaders 1 year ago
run_codegen.bat Time stops on new dialog, all dialog must be dismissed by user 1 year ago
ser.h Binary level loading, separate passes for 2d and 3d 2 years ago
threedee.glsl No waviness, export directly to assets to decrease codegen time 1 year ago
todo.txt Persistent arena is much bigger, add critical todo for later 2 years ago
tooling.ahk Successful conversation, VScode tooling, drama document, loading anim when thinking 1 year ago
tuning.h Character death logic, shotgun assassination works, death animation, death screen 1 year ago
web_specific_shader_header.glsl Fix Shadow Texture Border Sampling on Web 1 year ago
web_template.html Web fixes... 2 years ago

README.md

rpgpt

RPG GPT. Short experience

Western Frontier

Important Building Steps and Contribution Notes

Every time you checkin/clone the project, you have to unzip art.blend... If this is annoying to you, make a git hook

When editing Exporter.py in either the blender editor, or in a text editor in the repo, you have to continually make sure blender's internal version of the script doesn't go out of date with the actual script on disk, by either saving consistently from blender to disk if you're editing from blender, or by reloading from disk in the blend file before each commit.

Be very cautious about committing a change to any large asset files, i.e the art.blend and png files. Every time you do so, even if you change one little thing like moving the player somewhere, you copy the entire file in git lfs, ballooning the storage usage of the git project on the remote. So just try to minimize edits to those big files.

You must clone with git lfs is, and download git lfs files in this repository. If you don't know what that is, google it

Open art.blend, go to the scripting tab and hit the play button run the script and export all the 3d assets. Then, make sure that when you build, you also build and run the codegen so that said assets and other files are copied and imported. For debug builds on windows, that's call build_desktop_debug.bat codegen, the codegen argument to the build script causing it to run codegen

To enable codegen error messages, change @echo off to @echo on in run_codegen.bat