🏰 Damdara 🦀
Damdara is a logic crate for retro fantasy that can be built in Rust, while fully reproducing the "Fukkatsu no Jumon" system of the NES version of Dragon Quest, Damdara is a logic crate for retro-fantasy, which can be built in Rust for elements such as status generation based on the player's name, item equipping, and battle processing.
Table of Contents
Features
- Generate resurrection spells from parameters (Parameters to Password)
- Parameters generated from resurrection spells (Password to Parameters)
- Calculate parameters enhanced by name
- See list of monsters
- Refer to any monster information
- See parameter list
- Refer to any parameter
- See list of Item
- Refer to any Item information
- See list of Weapon
- Refer to any Weapon information
- See list of Armor
- Refer to any Armor information
- See list of Shield
- Refer to any Shield information
- Reproduction of battle scenes
- See list of Town
- Refer to any Town information
- Refer to any World information
- See list of Message
- Explore the field
- Explore the Town
Bit configuration mapping table for password generation.
| Byte Index | Field Description | Bits (from MSB to LSB) |
|---|---|---|
| 0 | Checksum (CRC-8) | [7:0] |
| 1 | Experience (lower 8 bits) | [7:0] |
| 2 | Pattern[2] (1) + Necklace (1) + Name[2] (6) | [7], [6], [5:0] |
| 3 | Item[3] + Item[2] | [7:4], [3:0] |
| 4 | Gold (lower 8 bits) | [7:0] |
| 5 | Name[0] (6) + Golem (1) + Pattern[1] (1) | [7:2], [1], [0] |
| 6 | Item[7] + Item[6] | [7:4], [3:0] |
| 7 | Pattern[0] + Dragon (1) + Name[3] (6) | [7], [6], [5:0] |
| 8 | Weapon (3) + Armor (3) + Shield (2) | [7:5], [4:2], [1:0] |
| 9 | Gold (upper 8 bits) | [7:0] |
| 10 | Keys + Herbs | [7:4], [3:0] |
| 11 | Item[5] + Item[4] | [7:4], [3:0] |
| 12 | Experience (upper 8 bits) | [7:0] |
| 13 | DragonScale (1) + Name[1] (6) + WarriorRing (1) | [7], [6:1], [0] |
| 14 | Item[1] + Item[0] | [7:4], [3:0] |
Installation
Cargo
cargo install damdara
Add to project
cargo add damdara
Brew
brew tap webcyou-org/tap
brew install damdara
Usage
cargo run <input>
or
damdara <input>
If input is not present, the default brave value is returned.
cargo run
player name: ゆうてい
status: Some(Status { level: 1, strength: 4, agility: 6, max_hp: 15, max_mp: 3, required_exp: 0, spell: None })
The name can be specified by giving -n
cargo run -- -n だい
player name: た゛い
status: Some(Status { level: 1, strength: 4, agility: 4, max_hp: 14, max_mp: 0, required_exp: 0, spell: None })
Mode
Status Option
Format Option
Example
Additional Resources
Contributing to Damdara
To contribute to Damdara, follow these steps:
- Fork this repository.
- Create a branch:
git checkout -b <branch_name>. - Make your changes and commit them:
git commit -m '<commit_message>'. - Push your changes to your branch:
git push origin <branch_name>. - Create a pull request.
Alternatively, consult the GitHub documentation on how to create a pull request.
References
- 名前による成長率タイプの変化
- DQ1の「ふっかつのじゅもん」の仕組みを全解説
- 復活の呪文を解析してみたよ
- ふっかつのじゅもんって何?基本の使い方から仕組み・原理まで、動画一本で全てわかる!【FC】【ゆっくり解説】
- ドラゴンクエスト 攻略・解析
- ドラゴンクエスト (FC) 復活の呪文計算機
- 主人公の名前と能力成長の基礎 FCDQ1
- DQ1(FC版)強さ判断プログラム
License
This project is licensed under the MIT License. See the LICENSE file for details.
Author
Daisuke Takayama