Giter VIP home page Giter VIP logo

road-of-gold's Introduction

Road of Goldとは

オープンソースで開発中の本格的な惑星規模の経済シミュレーションゲームです。
プレイヤーは商会の一つとして経済に参加し、活動することができます。

ここでは困難な開発を少しでも促進するために内部システムの公開と、改善案を募集しています。


開発環境について

C++のライブラリであるOpenSiv3Dを使って開発しています。
PlanetViewerは例外としてSiv3Dで開発しています。
基本的に最新のバージョンを使いますが、Main.cppにOpenSiv3Dのバージョンを表記します。

惑星

円柱ではなく、球体の惑星を採用しています。
時差があるため、ある時点における時刻は都市ごとに異なります。

Node

Nodeは惑星上に無数に存在する座標です。
惑星には数万近いNodeが存在し、座標データと近隣のNodeとの距離データなどを持ちます。
都市はNode上に設置され、交易ユニットはNodeとNode間を移動することができます。

都市

都市の位置はNodeによって指定されます。1つのNodeに複数の都市は存在出来ません。
都市は内部に市民と、市場などを持ちます。
市場は唯一都市のみが持ちます。
都市の役割は商品の生産と取引です。

市場

経済システムの根幹をなす部分です。
市場は商会や都市の販売先、商会の仕入れ先、市民の購入先としての役割を持ちます。
市場は「Basket」と「Ring」によって商品管理を行います。
「Basket」は同一商品の「Ring」の集合体です。
「Ring」には「個数」「値段」「出品者」などが登録されていて
市民は購入条件に一致するRingを見つけると購入処理を行います。
基本的な設定として、販売価格は前日の朝の出品価格の1.05倍から2.00倍で、
1日のうちに売り切れなければ価格が0.95倍されます

交易ユニット

交易ユニットは商品を積載し、都市間を移動することが出来ます。
これにより都市で生産できない商品を輸入することが出来ます。
交易ユニットの速度はVehicleDataとBiomeDataのMovingCostに依存します。

商会

商会は資源の流通を行う組織で、乗り物を交易路に設定し定期的な購入と販売を行います。
資本金が決められていて、その予算内で様々な行動を行うことが出来ます。

road-of-gold's People

Contributors

sknjpn avatar hirmiura avatar

Watchers

James Cloos avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.