「農家は Replace() されました」の版間の差分
(ページの作成:「Pythonライクなコードで農業を自動化するゲーム。 面白かったのでメモを残したいと思います https://store.steampowered.com/app/2060160/_Replace/?l=japanese == 設定 == Shift + Tab がデフォルトだとSteamオーバーレイのショートカットになっていて邪魔なので無効化しましょう。 == ゲームの進め方 == いい感じにループを組んで、色々アンロックしていくのが最初の目…」) |
編集の要約なし |
||
| (同じ利用者による、間の3版が非表示) | |||
| 1行目: | 1行目: | ||
Pythonライクなコードで農業を自動化するゲーム。 | Pythonライクなコードで農業を自動化するゲーム。 | ||
面白かったので攻略メモを残したいと思います | |||
https://store.steampowered.com/app/2060160/_Replace/?l=japanese | https://store.steampowered.com/app/2060160/_Replace/?l=japanese | ||
| 10行目: | 10行目: | ||
== ゲームの進め方 == | == ゲームの進め方 == | ||
いい感じにループを組んで、色々アンロックしていくのが最初の目標になると思います | いい感じにループを組んで、色々アンロックしていくのが最初の目標になると思います | ||
究極はゲーム全体を自動化してタイムを競うっぽい | |||
== 文法 == | == 文法 == | ||
| 51行目: | 53行目: | ||
耕す条件とかで使う | 耕す条件とかで使う | ||
=== | ==== get_time() ==== | ||
ゲーム開始からの時間 | |||
===== get_tick_count() ===== | |||
実行開始からのtickカウント | |||
=== sleep系 === | |||
==== do_a_flip() ==== | ==== do_a_flip() ==== | ||
| 66行目: | 74行目: | ||
植えることができる植物など | 植えることができる植物など | ||
=== | === Grass(草) === | ||
=== | === Bush(植え付け、茂み) === | ||
=== | === Tree(木) === | ||
1本あたり5つの木材が手に入る。 | 1本あたり5つの木材が手に入る。 | ||
東西南北に隣接した木があると、1つにつき2倍の時間がかかる。(最大16倍) | 東西南北に隣接した木があると、1つにつき2倍の時間がかかる。(最大16倍) | ||
=== | === Carrot(ニンジン) === | ||
=== | === Pumpkin(カボチャ) === | ||
20%確率で壊れる。 | 20%確率で壊れる。 | ||
| 84行目: | 92行目: | ||
とりあえず正方形に植えるのがよさそう | とりあえず正方形に植えるのがよさそう | ||
=== | === Sunflower(ヒマワリ) === | ||
収穫すると「パワー」を得てドローンが速くなる。 | 収穫すると「パワー」を得てドローンが速くなる。 | ||
=== | === Cuctus(サボテン) === | ||
0~9 のサイズがランダムで出現する。 | |||
長方形に隣接したサボテンが sorted であれば同時に収穫され、そのサボテン数の2乗に等しいサボテンが獲得できる。 | |||
サイズを取得するmeasure() と、隣接したサボテンを入れ替える swap() が使用できる。 | |||
隣接した要素を入れ替えることによるソートといえば バブルソート を基本的には利用することになるんだろう。 | |||
さらなる高速化のためには、適宜枝刈りするほか、このゲームでは植え直してしまう手もあるかもしれない | |||
=== 迷路 === | === 迷路 === | ||
| 117行目: | 135行目: | ||
むやみに速くすると生育スピードが追いつかずうまく制御できなくなることがあるので注意 | むやみに速くすると生育スピードが追いつかずうまく制御できなくなることがあるので注意 | ||
== 恐竜 == | |||
尻尾を集めるのに最低限必要なことは、 | |||
* (事前に)サボテンを十分な数もっておく | |||
* 農地を耕して何もない状態にする(リンゴが出現できる状態にする) | |||
* 恐竜の帽子をかぶるとリンゴが出現する | |||
* 適当なタイミングで恐竜以外の帽子に変えると尻尾が収穫される | |||
帽子の着脱だけでも尻尾を集めることはできるようです。 | |||
効率化のためにはリンゴを集める必要があります。いわゆる「スネークゲーム」をプレイします | |||
リンゴの回収数に応じて二乗で収穫数が増えるので、わりと真面目にスネークゲームをやるのがよさそうです | |||
== その他 == | == その他 == | ||
2026年2月10日 (火) 23:08時点における最新版
Pythonライクなコードで農業を自動化するゲーム。
面白かったので攻略メモを残したいと思います
https://store.steampowered.com/app/2060160/_Replace/?l=japanese
設定
Shift + Tab がデフォルトだとSteamオーバーレイのショートカットになっていて邪魔なので無効化しましょう。
ゲームの進め方
いい感じにループを組んで、色々アンロックしていくのが最初の目標になると思います
究極はゲーム全体を自動化してタイムを競うっぽい
文法
各種機能のアンロックが必要ですが、基本的な文法はほとんどPythonと同じです。
関数
移動系
move(方角)
East, West, North, South が指定できる
座標はループしていて、端まで行ったら反対側に移動する
農業系
plant(Entities.xx)
指定したエンティティを植える
多くのエンティティは till() したほうがいい
till()
耕す
use_item(Items.xx)
水やり、肥料などに使う
getter系
can_harvest()
収穫できるかどうか
get_entity_type()
エンティティの種類を見る
何もなかったらNoneを返す
get_ground_type()
土の状態を見る
耕す条件とかで使う
get_time()
ゲーム開始からの時間
get_tick_count()
実行開始からのtickカウント
sleep系
do_a_flip()
ドローンが宙返りをする
固定で1秒かかる
pet_the_piggy()
子ブタをなでます!
固定で1秒かかる
エンティティ
植えることができる植物など
Grass(草)
Bush(植え付け、茂み)
Tree(木)
1本あたり5つの木材が手に入る。
東西南北に隣接した木があると、1つにつき2倍の時間がかかる。(最大16倍)
Carrot(ニンジン)
Pumpkin(カボチャ)
20%確率で壊れる。
壊れてないカボチャが正方形に揃うと合体する。
とりあえず正方形に植えるのがよさそう
Sunflower(ヒマワリ)
収穫すると「パワー」を得てドローンが速くなる。
Cuctus(サボテン)
0~9 のサイズがランダムで出現する。
長方形に隣接したサボテンが sorted であれば同時に収穫され、そのサボテン数の2乗に等しいサボテンが獲得できる。
サイズを取得するmeasure() と、隣接したサボテンを入れ替える swap() が使用できる。
隣接した要素を入れ替えることによるソートといえば バブルソート を基本的には利用することになるんだろう。
さらなる高速化のためには、適宜枝刈りするほか、このゲームでは植え直してしまう手もあるかもしれない
迷路
恐竜
要素
水やり
農場の広さとスピードに応じていい感じに使うのがよさそう
肥料
植物を即座に成長させることができる(2秒短縮)
副作用があり、収穫の半分が Items.Weird_Substance に変わる。
このアイテムを使うと、対象と隣接する植物の感染状態を反転させる
混植
plant_type, (x, y) = get_companion()
この座標にこの植物があると収量が増えるよ、という情報が得られる
拡大
広くなる
スピード
アンロックと、ヒマワリのパワーでドローンの動きが速くなる。
むやみに速くすると生育スピードが追いつかずうまく制御できなくなることがあるので注意
恐竜
尻尾を集めるのに最低限必要なことは、
- (事前に)サボテンを十分な数もっておく
- 農地を耕して何もない状態にする(リンゴが出現できる状態にする)
- 恐竜の帽子をかぶるとリンゴが出現する
- 適当なタイミングで恐竜以外の帽子に変えると尻尾が収穫される
帽子の着脱だけでも尻尾を集めることはできるようです。
効率化のためにはリンゴを集める必要があります。いわゆる「スネークゲーム」をプレイします
リンゴの回収数に応じて二乗で収穫数が増えるので、わりと真面目にスネークゲームをやるのがよさそうです
その他
帽子
デバッグ
print() とブレークポイントが使えます