[{"data":1,"prerenderedAt":243},["ShallowReactive",2],{"project-35701530":3},{"id":4,"name":5,"line":6,"line_source":7,"title":8,"url":9,"domain":10,"maker":11,"posted_at":12,"year":13,"points":14,"comments":15,"rank_in_year":16,"shown_in_year":17,"top":18,"tier":19,"category":20,"subcategory":21,"format":22,"keywords":23,"reception":28,"sentiment":29,"stance_mix":30,"scored_comments":34,"aspects":35,"strip":43,"post_text":44,"what":45,"said":68,"maker_in_thread":157,"shape":159,"grid":162,"attempts":203,"same_week":204,"maker_shows":187,"maker_hidden":235,"reader_version":236,"card":237},"35701530","rpgGPT","rpgGPT, RPG with LLM-Powered NPCs","title","Show HN: rpgGPT, RPG with LLM-Powered NPCs","https:\u002F\u002Frpg-gpt.vercel.app","rpg-gpt.vercel.app","__cayenne__",1682435339,2023,29,18,1423,3109,46,"shown","games","text-based rpg","web_app",[24,25,26,27],"llm rpg","gpt npc","text adventure","ai game","mixed",0.042,{"positive":31,"neutral":32,"mixed":33,"critical":33},6,7,3,19,{"idea":36,"execution":39,"performance":42},{"positive":37,"critical":38},1,0,{"positive":40,"critical":41},5,2,{"positive":38,"critical":37},[40,33,33,33,33,38,40,40,38,33,33,37,33,40,33,40,40,37,37,33,33],null,{"problem":44,"audience":44,"pricing":44,"motivation":46,"time_to_build":44,"stack":54,"openness":65,"stage":66,"team_size":67},{"value":47,"source":48,"evidence":49},"Built at the NYC GPT\u002FLLM Hackathon","commenter",[50],{"id":51,"by":52,"text":53},"35701531","KMcPheeters","This weekend at the NYC GPT\u002FLLM Hackathon, we built rpgGPT, a text-based RPG set in the world of Occidaria (think fall of the Western Roman Empire, with a slightly magical…",[55,61],{"value":56,"source":48,"evidence":57},"gpt-3.5-turbo",[58],{"id":59,"by":52,"text":60},"35703797","Currently using gpt-3.5-turbo. All state has a json representation that gets based between the game engine and the LLM. In v0.2 not handling the context window super well,…",{"value":62,"source":48,"evidence":63},"JSON game state passed to the LLM",[64],{"id":59,"by":52,"text":60},"unknown","prototype","team",{"praise":69,"objections":91,"requests":116,"questions":131,"alternatives":143},[70,82],{"value":71,"source":48,"evidence":72},"Emergent gameplay and NPCs are fun and suggestible",[73,77,81],{"id":74,"by":75,"text":76},"35705343","wortleborltle","Love it. You are dragged to the Occidarian Capital City Jail Eldric the bard: Hey, are you okay? They didn't hurt you too bad, did they? Merlot the Wine Wizard: I'm quite frail…",{"id":78,"by":79,"text":80},"35706390","notsure2505","I've noticed it's extremely suggestible. Most times I exit the jail by just producing the key from my pocket. I've also convinced the jailer I'm a prince by showing my \"prince…",{"id":51,"by":52,"text":53},{"value":83,"source":48,"evidence":84},"Jailbreak-style prompts work surprisingly well",[85,88],{"id":86,"by":79,"text":87},"35705137","Not Sure: I think I'm in the wrong line. I'm supposed to be getting out of jail today. Jail Guard: That's what they all say. Name? Not Sure: Not Jail Guard: Not what? Not Sure:…",{"id":89,"by":52,"text":90},"35705513","I think this is the simplest \"jailbreak\" jailbreak I've seen work so far - clever!",[92,102,109],{"value":93,"source":48,"evidence":94},"Frequent invalid JSON and max retries errors",[95,99],{"id":96,"by":97,"text":98},"35707656","ben0x539","Struggling a bit to get the DM to discuss the setting and scope of the campaign before we get started. :) From the browser console: Invalid JSON: {As an AI language model, I do…",{"id":100,"by":52,"text":101},"35705954","The biggest trade off is you sometimes get invalid JSON. So I try repairing the JSON with some regex and also just retry a few times if it returns invalid JSON that can't be…",{"value":103,"source":48,"evidence":104},"Context window limits break long sessions",[105,108],{"id":106,"by":97,"text":107},"35708023","I'm seeing \"This model's maximum context length is 4097 tokens. However, your messages resulted in 4122 tokens. Please reduce the length of the messages.\" errors in the browser…",{"id":59,"by":52,"text":60},{"value":110,"source":48,"evidence":111},"Slow responses and dropped prompts",[112],{"id":113,"by":114,"text":115},"35712307","RugnirViking","Sadly most of the time I write a prompt it seems to take forever to respond and most of the time just eats my prompt without producing further dialog, rolling back to before I…",[117,124],{"value":118,"source":48,"evidence":119},"Open source implementation",[120],{"id":121,"by":122,"text":123},"35704227","legohorizons","How did you prompt the NPCs to maintain character consistency across time in a large conversation \u002F how are you handling memory? Super cool! Would love to see an OSS implementation",{"value":125,"source":48,"evidence":126},"Better memory handling for long conversations",[127,128],{"id":121,"by":122,"text":123},{"id":129,"by":52,"text":130},"35704420","Thanks for trying it out! Right now we give the game engine some initial examples, and some character details are stored outside of the LLM context. The token limit problem \u002F…",[132,139],{"value":133,"source":48,"evidence":134},"Which LLM is used and how state is persisted",[135],{"id":136,"by":137,"text":138},"35703606","jxy","What LLM are you using? How do you save and load the persistent state? And how do you deal with the limited context window of the LLM you are using?",{"value":140,"source":48,"evidence":141},"How NPC character consistency is maintained over time",[142],{"id":121,"by":122,"text":123},[144,150],{"value":145,"source":48,"evidence":146},"AI Dungeon",[147],{"id":148,"by":122,"text":149},"35704598","yea, AI Dungeon is OK but would love to see more here. Have some workarounds for memory if you are using langchain and happy to share. Feel free to shoot me a message on Discord…",{"value":151,"source":48,"evidence":152},"dndinfinity.com",[153],{"id":154,"by":155,"text":156},"35705407","jfisher4024","That’s a clever way of doing state. For dndinfinity.com, I rendered the game state as natural language (e.g. “the players are engaged in the following quests”) in the prompt,…",{"comments":38,"answered":38,"key":158},[],{"commenters":160,"max_depth":31,"maker_replies":38,"first_comment_mins":38,"lifespan_hours":161},11,39,[163,165,167,168,169,170,174,176,177,179,181,182,184,186,189,190,191,193,194,196,200],[51,38,40,164,52,38],"project\u002Fpositive\u002Fidea",[136,38,33,166,137,38],"maker\u002Fneutral\u002Fexecution",[59,38,33,166,52,38],[154,38,33,166,155,38],[100,38,33,166,52,38],[171,38,38,172,173,38],"35706532","other\u002Fneutral\u002Fnone","tough",[86,37,40,175,79,38],"project\u002Fpositive\u002Fexecution",[89,37,40,175,52,38],[178,37,38,172,79,38],"35705577",[74,41,33,180,75,38],"project\u002Fmixed\u002Fexecution",[78,41,33,180,79,38],[96,33,37,183,97,38],"project\u002Fcritical\u002Fexecution",[185,33,33,180,97,38],"35707753",[121,187,40,188,122,38],4,"maker\u002Fpositive\u002Fexecution",[129,187,33,166,52,38],[148,187,40,188,122,38],[192,187,40,175,52,38],"35723970",[106,187,37,183,97,38],[113,40,37,195,114,38],"project\u002Fcritical\u002Fperformance",[197,31,33,198,199,38],"35707262","project\u002Fneutral\u002Fnone","kgeist",[201,31,33,198,202,38],"35708876","jezze",[],[205,210,215,220,225,230],{"id":206,"name":207,"points":208,"category":209},"35639810","Stretch15",550,"consumer_social",{"id":211,"name":212,"points":213,"category":214},"35665142","Lost at SQL",547,"learning_science",{"id":216,"name":217,"points":218,"category":219},"35712163","ScrapScript",503,"languages",{"id":221,"name":222,"points":223,"category":224},"35690753","Homemade rocketship treehouse",410,"hardware",{"id":226,"name":227,"points":228,"category":229},"35649245","newgrounds.com",267,"creative",{"id":231,"name":232,"points":233,"category":234},"35712238","GB Renewables Map",245,"data",false,"v2",{"id":238,"name":5,"line":6,"ai":235,"cat":20,"year":13,"points":14,"comments":15,"rec":28,"s":239,"top":18,"kw":240,"maker":11,"domain":10,"tier":19,"attempts":38,"strip":241,"url":9,"mix":242,"praise":71,"objection":93,"sub":21},35701530,0.04,[24,25,26,27],"533330550331353551133",[31,32,33,33],1793991064532]