# Vore Scenario Generator ![Example scenario, reading: The action takes place at a sports event. The encounter is themed around voreception. The action begins when a threat is made. Things are more difficult because someone is not prepared Partway through, unexpectedly, the prey nearly escapes The vore scene is focused on the aftermath The word of the day is Millionaire](example.png) It does exactly what it says on the tin: it generates random vore scenarios. For you! [The list of default responses are here if you want to check it in advance.](https://scenario-generator.deliciousreya.net/responses) ## Web Usage ### Generation * Visit [the web interface](https://scenario-generator.deliciousreya.net/generator) to generate a random scenario. * Don't like what you got? Click the lock next to the components you don't like to change it to a die, then click "Reroll Selected" to generate fresh ones. * Think the scenario is beyond saving? Click "New Scenario" to create an entirely new scenario. * Satisfied with the results? Click "Get Scenario Link" to get a new * You can download the web interface by simply using the Save command in your browser to generate scenarios offline! * You can view the possible responses with the ["View Possible Responses" button](https://scenario-generator.deliciousreya.net/responses) ### Customization Coming soon! ## Discord Usage ### Installation * Visit [this Discord OAuth link](https://discord.com/api/oauth2/authorize?client_id=1192326191189864458&permissions=0&scope=applications.commands) and give permission to use application commands in your server. Share it with the admin of your server if you don't have permission yourself! * Don't worry - not only does this bot not do anything nefarious with your messages, but it actually can't read them at all. It only reads the commands you give it and its own messages! If you're concerned, though, please go through the code. Kink stuff is very personal and private! Use caution when running random horny software! ### Generation * Run the `/generate` command to generate a random scenario. * Don't like what you got? Pick the components you don't like from the select box, then click "Reroll Selected" to generate fresh ones. * Think the scenario is beyond saving? Click "Trash it." to delete the message. * Satisfied with the results? Click "Looks good!" to remove the reroll commands. ### Customization **Privacy note**: Note that changes to custom responses will be sent to your current channel and will be visible to the admin (that's me) and everyone in the server, as well as anyone who knows or can guess your server ID. Assume your responses are not private. * Run `/response add [table] [text]` to add a new custom response. Use the table listing in the Discord command. * Run `/response delete [table] [text]` to remove a custom response. Give the response text exactly! * Run `/response edit [table] [old text] [new text]` to modify a custom response. Give the old response text exactly! * Run `/response list` to get a link to a list of all responses that will be given in the current server, including both default and custom responses. ## Credits * Icon source: [obsid1an on DeviantArt](https://www.deviantart.com/obsid1an/art/Slot-Machine-Game-Icon-341475642) * Writing for default response sets by [Ssublissive](https://aryion.com/g4/gallery/Ssublissive), with additional writing by [DeliciousReya](https://aryion.com/g4/gallery/DeliciousReya), [Seina](https://aryion.com/g4/user/RediQ), and [sushisama](https://arsenicteacups.carrd.co/). * UX testing by a :dolphin: friend. * Development by [DeliciousReya](https://aryion.com/g4/gallery/DeliciousReya) in [TypeScript](https://www.typescriptlang.org/), using * [slash-create](https://slash-create.js.org/#/) and [discord-snowflake](https://github.com/ianmitchell/interaction-kit/tree/main/packages/discord-snowflake#readme) for Discord management, * [itty-router](https://github.com/kwhitley/itty-router#readme), [escape-html](https://github.com/component/escape-html#readme), [markdown-escape](https://github.com/kemitchell/markdown-escape.js#readme), [slug](https://github.com/Trott/slug#readme), and [collapse-white-space](https://github.com/wooorm/collapse-white-space#readme) for response generation, * [less](https://lesscss.org) with [clean-css](https://github.com/clean-css/clean-css) and [babel](https://babeljs.io/) with [terser](https://terser.org/) for pretty and small client code, * [rollup](https://rollupjs.org/) with [plugin-commonjs](https://github.com/rollup/plugins/tree/master/packages/commonjs/#readme)/[plugin-node-resolve](https://github.com/rollup/plugins/tree/master/packages/node-resolve/#readme)/[plugin-ts](https://github.com/wessberg/rollup-plugin-ts#readme)/[plugin-terser](https://github.com/rollup/plugins/tree/master/packages/terser#readme) for complete client bundles, * and [camelcase](https://github.com/sindresorhus/camelcase#readme) and [fast-deep-equal](https://github.com/epoberezkin/fast-deep-equal#readme) for keeping the client bundles and their source maps up to date. * Hosted on [CloudFlare Workers](https://developers.cloudflare.com/workers/) with [D1](https://developers.cloudflare.com/d1/). ## License (MIT) Copyright (c) 2024 DeliciousReya and contributors Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the “Software”), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED “AS IS”, WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.