{ "info": { "author": "John Hagen", "author_email": "johnthagen@gmail.com", "bugtrack_url": null, "classifiers": [ "Development Status :: 4 - Beta", "Environment :: Web Environment", "Framework :: Django", "Framework :: Django :: 1.10", "Intended Audience :: End Users/Desktop", "License :: OSI Approved :: MIT License", "Operating System :: OS Independent", "Programming Language :: Python", "Programming Language :: Python :: 3", "Programming Language :: Python :: 3.6", "Programming Language :: Python :: 3 :: Only", "Topic :: Games/Entertainment :: Role-Playing" ], "description": "Stardust RPG\n============\n\n.. image:: https://travis-ci.org/johnthagen/stardust-rpg.svg\n :target: https://travis-ci.org/johnthagen/stardust-rpg\n\n.. image:: https://codeclimate.com/github/johnthagen/stardust-rpg/badges/gpa.svg\n :target: https://codeclimate.com/github/johnthagen/stardust-rpg\n\n.. image:: https://codeclimate.com/github/johnthagen/stardust-rpg/badges/issue_count.svg\n :target: https://codeclimate.com/github/johnthagen/stardust-rpg\n\n.. image:: https://img.shields.io/pypi/v/stardust-rpg.svg\n :target: https://pypi.python.org/pypi/stardust-rpg\n\n.. image:: https://img.shields.io/pypi/status/stardust-rpg.svg\n :target: https://pypi.python.org/pypi/stardust-rpg\n\n.. image:: https://img.shields.io/pypi/pyversions/stardust-rpg.svg\n :target: https://pypi.python.org/pypi/stardust-rpg/\n\n.. image:: https://img.shields.io/pypi/dm/stardust-rpg.svg\n :target: https://pypi.python.org/pypi/stardust-rpg/\n\nStardust RPG is a tactical d20 role-playing game designed to provide a variety of progression\noptions for players and encourage teamwork. Baseline content is based off the Stardust book\nseries by John Hagen but is adaptable to a variety of fantasy settings.\n\nFeatures\n--------\n\n- Cross platform. Run the server on any platform that supports Python. Clients can\n connect and manage their characters using a standard web browser with no install required.\n- Roll20 integration. Players can to automatically sync their character stats and\n automatically generated weapon and ability macros right into a Roll20 campaign. Special thanks\n to `@theandrewdavis `_ for his analysis of the roll20.net API.\n- Extensible. Easily add new content, such as classes, weapons, or abilities.\n- Persistent. Store characters in a persistent database for easy reuse.\n\nUsage\n=====\n\nInstallation\n------------\n\nYou can install, upgrade, and uninstall ``stardust-rpg`` with these commands:\n\n.. code:: shell-session\n\n $ pip3 install stardust-rpg\n $ pip3 install --upgrade stardust-rpg\n $ pip3 uninstall stardust-rpg\n\nServer Setup\n------------\n\nCreate an environment variable named ``SECRET_KEY`` and populate it with a\n`large random value `_.\n\nConfiguration\n-------------\n\nInitialize the database:\n\n.. code:: shell-session\n\n $ stardust-rpg makemigrations\n $ stardust-rpg migrate\n\nCreate an admin account:\n\n.. code:: shell-session\n\n $ stardust-rpg createsuperuser\n\n\nProduction Execution\n~~~~~~~~~~~~~~~~~~~~\n\n.. warning::\n\n ``--insecure`` is used to serve static files in the absense of a\n web server (e.g. NGINX) running in front of Django.\n\n.. code:: shell-session\n\n $ stardust-rpg runserver 0.0.0.0:80 --insecure\n\nDebug Execution\n~~~~~~~~~~~~~~~\n\n.. warning::\n\n `Debug mode should not be used in production `_.\n\n.. code:: shell-session\n\n $ stardust-rpg runserver 0.0.0.0:80 --settings=app.debug_settings\n\nGame Setup\n----------\n\nLog into the admin interface by browsing to http://localhost/admin\n\nAdd ``Users`` for each player. Configure the following fields:\n\n======================= ==============================================\nField Value\n======================= ==============================================\n``Username`` Stardust RPG server username.\n``Password`` Initial user password\n``Email Address`` Player's Roll20 email address.\n======================= ==============================================\n\nAdd a ``Party`` for the group. Configure the following fields:\n\n======================= ==============================================\nField Value\n======================= ==============================================\n``Name`` Name of the character. Must match name of character in Roll20.\n``Roll20 campaign id`` The 6 digit ID (e.g. https://app.roll20.net/campaigns/details/CAMPAIGN_ID/CAMPAIGN_NAME) assigned to the campaign found at https://app.roll20.net/campaigns/search\n======================= ==============================================\n\nAdd ``Characters`` for each character in the game. Configure the following fields:\n\n======================= ==============================================\nField Value\n======================= ==============================================\n``User`` Player who has modification rights to the character.\n``Name`` Name of the character. Must match name of character in Roll20.\n``Party`` The ``Party`` this character is a part of.\n``Class`` The class assigned to this ``Character``.\n======================= ==============================================\n\nRules\n=====\n\nCombat\n------\n\nCombat Round (``RND``)\n~~~~~~~~~~~~~~~~~~~~~~\n\n#. At the start of combat, roll a d20 + Maximum Speed (``SPEED``) to determine turn order.\n\n #. If your character is surprised, take no actions during the first ``RND``.\n\n#. Do the following actions in any order. A Full Action (``FullA``) requires consuming all these\n actions. A Free Action (``FreeA``) does not consume any of these actions.\n\n #. Move Action (``MovA``)\n\n #. Move your character up to Maximum Speed (``SPEED``).\n\n #. You may move through squares occupied by allies, but may not move through grid\n squares occupied by enemies.\n\n #. After performing a ``StdA`` or ``AbA``, you may consume the remaining ``SPEED`` that has\n not be used during this ``RND``.\n\n #. Standard Action (``StdA``)\n\n #. Perform a single melee or ranged weapon attack\n\n #. Roll a d20 and ``PDAM`` dice. If d20 + ``PAC`` \u00e2\u2030\u00a5 target ``PDEF``, apply ``PDAM``.\n\n #. If d20 \u00e2\u2030\u00a5 Critical Range (``CRAN``), automatic hit, apply CDAM.\n #. if d20 = 1, automatic miss.\n\n #. Ability Action (``AbA``)\n\n #. Cast a single ability that requires ``AbA``\n\n #. Subtract the MP Cost from your Current ``MP``. Current ``MP`` cannot drop below 0.\n #. Roll a d20 and ``MDAM`` dice. If d20 + ``MAC`` \u00e2\u2030\u00a5 target ``MDEF``, apply\n ``MDAM`` and Effect.\n\n #. If d20 = 20, automatic hit, choose one of the following:\n 2x [``MDAM``, Effect, Area, OR Duration].\n\n #. If d20 = 1, automatic miss.\n\n #. If casting a combo, the ally who is casting the combo with must also subtract the\n MP Cost and spend whatever Time is required to cast. This time is deducted from\n their next turn.\n\n#. At the conclusion of your turn, roll a d20 and Regeneration Dice (``RD``)\n\n #. If d20 + Magic Regeneration (``REG``) \u00e2\u2030\u00a5 18, restore ``RD`` MP.\n\n #. If d20 = 20, restore 2x ``RD`` MP.\n #. If d20 = 1, automatic failure.\n\nIncapacitation (``KO``)\n~~~~~~~~~~~~~~~~~~~~~~~\n\n- If ``HP`` \u00e2\u2030\u00a4 0, unconscious status.\n- If ``HP`` \u00e2\u2030\u00a4 -(50% Maximum ``HP``), death status.\n\nStatus Effects\n~~~~~~~~~~~~~~\n\n=========== ===================================================================================\nStatus Effect\n=========== ===================================================================================\nImmobilize Cannot take ``MovA``.\nSilence Cannot take ``AbA`` (i.e. any action that targets with ``MAC`` or consumes ``MP``).\nStagger Cannot take ``StdA``.\nDisable Cannot take ``StdA`` or ``AbA``.\nStun Cannot take ``StdA``, ``AbA``, or ``MovA``.\nSleep Cannot take ``StdA``, ``AbA``, or ``MovA``. Woken by physical or magical attack.\nFear Must expend ``MovA`` to move in opposite direction of the source of fear.\nAllure Must expend ``MovA`` to move towards the source of the allure.\nBlind Maximum range of physical and magic attacks reduced to 1. ``VIS`` reduced to 1.\nInhibit Max ``MP`` reduced to 0. ``MRED`` reduced to 0.\n=========== ===================================================================================\n\n=========== ===================================================================================\nCondition Effect\n=========== ===================================================================================\nUnconscious Cannot take anymore actions until revived.\nDeath Creature is dead.\n=========== ===================================================================================\n\nAdvantage / Disadvantage\n~~~~~~~~~~~~~~~~~~~~~~~~\n\n======================= ===========================================================================\nState Effect\n======================= ===========================================================================\nAdvantage (``ADV``) Roll twice and use the higher of the two rolls.\nDisadvantage (``DADV``) Roll twice and use the lower of the two rolls.\n======================= ===========================================================================\n\nVulnerabilities and Resistances\n~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~\n\n======================= ==============================================\nProperty Effect\n======================= ==============================================\nVulnerability (``VUL``) Take 2x from a particular damage type.\nResistance (``RES``) Take \u00c2\u00bd from a particular damage type.\nImmunity (``IMU``) Take no damage from a particular damage type.\n======================= ==============================================\n\nSkills\n------\n\n======================= ===================================================================\nSkill Example Actions\n======================= ===================================================================\nAthletics (``ATH``) Climb, Jump, Swim, Grapple, Reflex, Balance, Fall\nStealth (``STE``) Sneak, Hide, Sleight of Hand, Disguise, Escape, Detect Trap\nFortitude (``FOR``) Endurance, Resist Status Effect, Death Save, Survival\nAptitude (``APT``) Knowledge, Heal, Operate Device, Pick Lock, Forgery, Scan, Utility\nPerception (``PER``) Spot, Listen, Search, Touch, Smell, Taste\nSpeech (``SPE``) Diplomacy, Intimidate, Bluff, Persuasion\n======================= ===================================================================\n\nAttribute Effects\n-----------------\n\n+-----------+------------------------+---------------------------+---------------------------+\n| Attribute | General | Offensive | Defensive |\n+===========+========================+===========================+===========================+\n| ``STR`` | Feet Unlock | | ``1PAC`` | | Chest Unlock |\n| | | | Weapon Damage | | Shield Unlock |\n| | | | (``0.5-1.5DAM``) | |\n+-----------+------------------------+---------------------------+---------------------------+\n| ``DEX`` | ``0.5SPEED`` | Weapon Unlock | ``1PDEF`` |\n+-----------+------------------------+---------------------------+---------------------------+\n| ``CON`` | ``0.5VIS`` | | | ``1.5HP`` per ``LVL`` |\n| | | | | ``0.5PRED`` |\n+-----------+------------------------+---------------------------+---------------------------+\n| ``INT`` | | ``1SP`` per ``LVL`` | | ``1MP`` per ``LVL`` | ``0.5MRED`` |\n| | | ``10%SEL`` | | Head Unlock | |\n| | | Utility Unlock | | |\n+-----------+------------------------+---------------------------+---------------------------+\n| ``WIS`` | | | ``1AP`` | ``1MDEF`` |\n| | | | Magic Power | |\n| | | | Neck Unlock | |\n+-----------+------------------------+---------------------------+---------------------------+\n| ``CHA`` | ``7%BUY`` | | ``1AP`` | |\n| | | | ``1MAC`` | |\n| | | | ``1REG`` | |\n| | | | ``0.25RD`` | |\n| | | | Hand Unlock | |\n+-----------+------------------------+---------------------------+---------------------------+\n\nReleases\n========\n\n2.0.0\n-----\n\n- Numerous updates and new features.\n- Support Python 3.6\n\n1.0.0\n-----\n\n- Initial Release\n", "description_content_type": null, "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/johnthagen/stardust-rpg", "keywords": "stardust role-playing d20", "license": "MIT", "maintainer": "", "maintainer_email": "", "name": "stardust-rpg", "package_url": "https://pypi.org/project/stardust-rpg/", "platform": "", "project_url": "https://pypi.org/project/stardust-rpg/", "project_urls": { "Homepage": "https://github.com/johnthagen/stardust-rpg" }, "release_url": "https://pypi.org/project/stardust-rpg/2.0.0/", "requires_dist": null, "requires_python": "", "summary": "", "version": "2.0.0" }, "last_serial": 2547694, "releases": { "0.0.1": [], "1.0.0": [ { "comment_text": "", "digests": { "md5": "2257237886c941fb5a8c3bc5ffe05548", "sha256": "171c2a1bcd16c00a57395884ea19fd98ae0c0e846d0b6971bc2aaf3f60910b58" }, "downloads": -1, "filename": "stardust-rpg-1.0.0.tar.gz", "has_sig": false, "md5_digest": "2257237886c941fb5a8c3bc5ffe05548", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 66625, "upload_time": "2016-06-01T00:50:11", "url": "https://files.pythonhosted.org/packages/ce/47/b508d70d91f38d51b22e76494bde8e4253bc7a3432d3ffd2a78cd4a530e5/stardust-rpg-1.0.0.tar.gz" } ], "2.0.0": [ { "comment_text": "", "digests": { "md5": "4e61420e7a4016ae01e5dcf68b7ed2d7", "sha256": "46e96edca88b312a368a6759bfc74b1866b444cfe8d7ca1fed0a309b4c1aee46" }, "downloads": -1, "filename": "stardust-rpg-2.0.0.tar.gz", "has_sig": false, "md5_digest": "4e61420e7a4016ae01e5dcf68b7ed2d7", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 314355, "upload_time": "2016-12-31T19:30:49", "url": "https://files.pythonhosted.org/packages/a2/25/fb5f8cb00e20f865b5d9dd75a5ca54e7568a7eca443049fbb81abb283f6b/stardust-rpg-2.0.0.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "4e61420e7a4016ae01e5dcf68b7ed2d7", "sha256": "46e96edca88b312a368a6759bfc74b1866b444cfe8d7ca1fed0a309b4c1aee46" }, "downloads": -1, "filename": "stardust-rpg-2.0.0.tar.gz", "has_sig": false, "md5_digest": "4e61420e7a4016ae01e5dcf68b7ed2d7", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 314355, "upload_time": "2016-12-31T19:30:49", "url": "https://files.pythonhosted.org/packages/a2/25/fb5f8cb00e20f865b5d9dd75a5ca54e7568a7eca443049fbb81abb283f6b/stardust-rpg-2.0.0.tar.gz" } ] }