{"id":23429075,"url":"https://github.com/thetechnocrat-dev/darkforestframe","last_synced_at":"2025-04-09T13:23:09.330Z","repository":{"id":229350115,"uuid":"776255035","full_name":"thetechnocrat-dev/darkforestframe","owner":"thetechnocrat-dev","description":"dark forest on farcaster","archived":false,"fork":false,"pushed_at":"2024-03-26T20:45:14.000Z","size":5562,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-02-15T07:31:10.775Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"https://darkforestframe.vercel.app","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/thetechnocrat-dev.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2024-03-23T02:19:39.000Z","updated_at":"2024-03-26T18:40:39.000Z","dependencies_parsed_at":"2024-03-26T21:49:54.185Z","dependency_job_id":null,"html_url":"https://github.com/thetechnocrat-dev/darkforestframe","commit_stats":null,"previous_names":["thetechnocrat-dev/darkforestframe"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/thetechnocrat-dev%2Fdarkforestframe","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/thetechnocrat-dev%2Fdarkforestframe/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/thetechnocrat-dev%2Fdarkforestframe/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/thetechnocrat-dev%2Fdarkforestframe/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/thetechnocrat-dev","download_url":"https://codeload.github.com/thetechnocrat-dev/darkforestframe/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248046117,"owners_count":21038691,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-12-23T07:16:38.318Z","updated_at":"2025-04-09T13:23:09.304Z","avatar_url":"https://github.com/thetechnocrat-dev.png","language":"TypeScript","readme":"\u003cimg width=\"506\" alt=\"Screenshot 2024-03-24 at 2 48 49 AM\" src=\"https://github.com/thetechnocrat-dev/darkforestframe/assets/9427089/8ce5c1e3-6128-4e9b-b9e7-0320ee092ffa\"\u003e\n\n“If I destroy you, what business is it of yours?”\n― Liu Cixin, The Dark Forest\n\n[Inspire by Dark Forest zKSNARK Space Warefare](https://blog.zkga.me/announcing-darkforest)\n\nRuleset\n1) Every player starts the game with three planets hidden from all other players.\n2) Planets build up energy over time (equation 1).\n3) At anypoint in the game a player can choose to reveal one or more of their planets for rest of the game.\n4) A player can send energy from a planet they own to their other planets or to any other player's revealed planets (equation 2).\n5) A planet is also revealed for rest of the game when it sends energy to a planet that is not yours.\n6) At the end of the game the player with the most energy summed across their 3 planets wins (equation 3).\n\nEquation 1) \n```\nE = ln(t + 1)\n```\n* `E` is the current energy of the planet.\n* `t` is the number of epochs since game start.\n* `ln` is the natural log.\n\nPlot\n\u003cimg width=\"517\" alt=\"Screenshot 2024-03-24 at 11 31 18 AM\" src=\"https://github.com/thetechnocrat-dev/darkforestframe/assets/9427089/7be5d885-f7e7-4a04-a822-58f000ac7c93\"\u003e\n\nAn astute read might notice this looks similiar to the [bitcoin supply over time](https://commons.wikimedia.org/wiki/File:Total_bitcoins_over_time.png)\n\u003cimg width=\"745\" alt=\"Screenshot 2024-03-24 at 11 32 18 AM\" src=\"https://github.com/thetechnocrat-dev/darkforestframe/assets/9427089/cfdd86ff-f00e-461e-9724-6be2da5d4d0d\"\u003e\n\nEquation 2)\n\na)\n```\nR = (1 / j) * integral_0_to_j(ln(t + 1))\n```\n* `R` is the threshhold variable of the below sigmoid function. \n\n\u003cimg width=\"517\" alt=\"Screenshot 2024-03-24 at 11 37 49 AM\" src=\"https://github.com/thetechnocrat-dev/darkforestframe/assets/9427089/8c84cd1d-6928-48ed-a20d-001bbc861ec6\"\u003e\n\nb) \n```\nE_1' = E_1 * σ (E_1 − R)\n```\n* `E_1'` is the new energy of the planet after sending energy.\n* `E_1` is the current energy of the planet sending energy.\n* `σ` is the sigmoid function.\n* `R` is the the threshold equation.\n\n\u003cimg width=\"516\" alt=\"Screenshot 2024-03-24 at 11 42 09 AM\" src=\"https://github.com/thetechnocrat-dev/darkforestframe/assets/9427089/acb895e6-8edc-4630-b799-64fe79bf6d54\"\u003e\n\n\nc) \n```\nE_2' = E_2 * σ (E_2 − R)\n```\n* `E_2'` is the new energy of the planet receiving the energy.\n* `E_2` is the current energy of the planet receiving energy.\n* `σ` is the sigmoid function.\n* `R` is the the threshold equation.\n\n\u003cimg width=\"566\" alt=\"Screenshot 2024-03-24 at 11 44 06 AM\" src=\"https://github.com/thetechnocrat-dev/darkforestframe/assets/9427089/47e48f5b-9098-4e50-a576-1d5226caa9aa\"\u003e\n\n\nEquation 3)\n```\nP = E1 + E2 + E3\n```\n* `P` is the number of points and `E1` is the energy from planet 1 and so on.\n\n\u003cimg width=\"572\" alt=\"Screenshot 2024-03-23 at 9 24 46 AM\" src=\"https://github.com/thetechnocrat-dev/darkforestframe/assets/9427089/f318b3e5-e126-46e4-bfa7-4fb4d642fefa\"\u003e\n\n\"In the cosmos, no matter how fast you are, someone will be faster; no matter how slow you are, someone will be slower.\"\n- Liu Cixin, Death's End\n\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fthetechnocrat-dev%2Fdarkforestframe","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fthetechnocrat-dev%2Fdarkforestframe","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fthetechnocrat-dev%2Fdarkforestframe/lists"}