# HG changeset patch # User Robert McIntyre # Date 1332238711 18000 # Node ID 9ca350a476f09b813d1221704792adfed19dd006 # Parent d92f7d68445a9cb654f7e07fbd93052a1b573904 discovered hex values for pokemon species. diff -r d92f7d68445a -r 9ca350a476f0 clojure/com/aurellem/exp/pokemon.clj --- a/clojure/com/aurellem/exp/pokemon.clj Tue Mar 20 03:54:15 2012 -0500 +++ b/clojure/com/aurellem/exp/pokemon.clj Tue Mar 20 05:18:31 2012 -0500 @@ -516,3 +516,40 @@ + + +(defn get-pokemon-1-info + ([state] + (subvec (vec (memory state)) + 0xD162 0xD197)) + ([] (get-pokemon-1-info @current-state))) + +(def baseline (File. "/home/r/baseline-poke")) + + + + +(import java.io.File) + +(defn set-baseline [state] + (clojure.java.io/copy + (with-out-str (print-listing state 0xD162 0xD197)) + baseline)) + + + +(defn compare-pokemon + ([state] + (let [target (File. "/home/r/temp-poke")] + (clojure.java.io/copy + (with-out-str (print-listing state 0xD162 0xD197)) + target) + (println (:out + (clojure.java.shell/sh "diff" + (.getCanonicalPath baseline) + (.getCanonicalPath target)))))) + ([] (compare-pokemon-1 @current-state))) + + +(defn crazy-pid [] + (read-state "crazy-pidgeot")) diff -r d92f7d68445a -r 9ca350a476f0 clojure/com/aurellem/exp/species.clj --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/clojure/com/aurellem/exp/species.clj Tue Mar 20 05:18:31 2012 -0500 @@ -0,0 +1,282 @@ +(ns com.aurellem.exp.species + (:use (com.aurellem.gb gb-driver items util)) + (:import [com.aurellem.gb.gb_driver SaveState])) + +(def species-ID-1 0xD163) + +(defn species-state [] + (read-state "pika-no-1")) + +(defn view-species [n] + (run-moves + (set-memory (species-state) species-ID-1 n) + (concat [[:a]] + (repeat 200 []) + [[:a]] + (repeat 200 [])))) + +(defn iterate-species [] + (dorun + (map (fn [n] (println n) + (view-species n) + (Thread/sleep 4800)) + (range (inc 0xFF))))) + + + +;; 000 00 : glitch +;; 001 01 : Rhydon +;; 002 02 : Kangashgan +;; 003 03 : nidoran-male +;; 004 04 : clefairy +;; 005 05 : spearow +;; 006 06 : voltorb +;; 007 07 : nidoking +;; 008 08 : slowbrow +;; 009 09 : ivysaur +;; 010 0A : eggxecutor +;; 011 0B : likitoungue +;; 012 0C : eggxegutte +;; 013 0D : grimer +;; 014 0E : gengar +;; 015 0F : nidoran-female +;; 016 10 : nodoqueen +;; 017 11 : cubone +;; 018 12 : rhyhorn +;; 019 13 : lapras +;; 020 14 : arcanine +;; 021 15 : mew +;; 022 16 : gyarados +;; 023 17 : shelder +;; 024 18 : tentacool +;; 025 19 : gastly +;; 026 1A : scyther +;; 027 1B : staryu +;; 028 1C : blastoise +;; 029 1D : pinsir +;; 030 1E : tangela +;; 031 1F : glitch +;; 032 20 : glitch +;; 033 21 : growlithe +;; 034 22 : onix +;; 035 23 : fearow +;; 036 24 : pidgey +;; 037 25 : slowpoke +;; 038 26 : kadabra +;; 039 27 : graveller +;; 040 28 : chansey +;; 041 29 : machoke +;; 042 2A : mr-mime +;; 043 2B : hitmonlee +;; 044 2C : hitmonchan +;; 045 2D : arbok +;; 046 2E : parasect +;; 047 2F : psyduck +;; 048 30 : drowzee +;; 049 31 : golem +;; 050 32 : glitch +;; 051 33 : magmar +;; 052 34 : glitch +;; 053 35 : electabuzz +;; 054 36 : magneton +;; 055 37 : koffing +;; 056 38 : glitch +;; 057 39 : mankey +;; 058 3A : seel +;; 059 3B : diglett +;; 060 3C : tauros +;; 061 3D : glitch +;; 062 3E : glitch +;; 063 3F : glitch +;; 064 40 : farfedtch +;; 065 41 : venonat +;; 066 42 : dragonite +;; 067 43 : glitch +;; 068 44 : glitch +;; 069 45 : glitch +;; 070 46 : doduo +;; 071 47 : poliwag +;; 072 48 : jynx +;; 073 49 : moltres +;; 074 4A : articuno +;; 075 4B : zapdos +;; 076 4C : ditto +;; 077 4D : meowth +;; 078 4E : krabby +;; 079 4F : glitch +;; 080 50 : glitch +;; 081 51 : glitch +;; 082 52 : vulpix +;; 083 53 : ninetails +;; 084 54 : pikachu +;; 085 55 : riachu +;; 086 56 : glitch +;; 087 57 : glitch +;; 088 58 : dratini +;; 089 59 : dragonair +;; 090 5A : kabuto +;; 091 5B : kabutops +;; 092 5C : horsea +;; 093 5D : sedra +;; 094 5E : glitch +;; 095 5F : glitch +;; 096 60 : sandshrew +;; 097 61 : sandslash +;; 098 62 : omanyte +;; 099 63 : omastar +;; 100 64 : jugglypuff +;; 101 65 : wigglytuff +;; 102 66 : eevee +;; 103 67 : flareon +;; 104 68 : jolteon +;; 105 69 : vapeoreon +;; 106 6A : machop +;; 107 6B : zubat +;; 108 6C : ekans +;; 109 6D : paras +;; 110 6E : poliwhirl +;; 111 6F : poliwrath +;; 112 70 : weedle +;; 113 71 : kakuna +;; 114 72 : beedrill +;; 115 73 : glitch +;; 116 74 : dodrio +;; 117 75 : primeape +;; 118 76 : dugtrio +;; 119 77 : venomoth +;; 120 78 : dewgong +;; 121 79 : glitch +;; 122 7A : glitch +;; 123 7B : caterpie +;; 124 7C : metapod +;; 125 7D : butterfree +;; 126 7E : machamp +;; 127 7F : glitch +;; 128 80 : golduck +;; 129 81 : hypno +;; 130 82 : golbat +;; 131 83 : mewtwo +;; 132 84 : snorlax +;; 133 85 : magikarp +;; 134 86 : glitch +;; 135 87 : glitch +;; 136 88 : muk +;; 137 89 : glitch +;; 138 8A : kingler +;; 139 8B : cloyster +;; 140 8C : glitch +;; 141 8D : electrode +;; 142 8E : clefable +;; 143 8F : wheezing +;; 144 90 : persian +;; 145 91 : marowak +;; 146 92 : glitch +;; 147 93 : haunter +;; 148 94 : abra +;; 149 95 : alakazam +;; 150 96 : pidgeotto +;; 151 97 : pidgeot +;; 152 98 : starmie +;; 153 99 : bulbasaur +;; 154 9A : venusaur +;; 155 9B : tentacruel +;; 156 9C : glitch +;; 157 9D : goldeen +;; 158 9E : seaking +;; 159 9F : glitch +;; 160 A0 : glitch +;; 161 A1 : glitch +;; 162 A2 : glitch +;; 163 A3 : ponyta +;; 164 A4 : rapidash +;; 165 A5 : rattatta +;; 166 A6 : raticate +;; 167 A7 : nidorino +;; 168 A8 : nidorina +;; 169 A9 : geodude +;; 170 AA : porygon +;; 171 AB : aerodactyl +;; 172 AC : glitch +;; 173 AD : magnemite +;; 174 AE : glitch +;; 175 AF : glitch +;; 176 B0 : charmander +;; 177 B1 : squirtle +;; 178 B2 : charmelon +;; 179 B3 : wartortle +;; 180 B4 : charizard +;; 181 B5 : glitch +;; 182 B6 : glitch +;; 183 B7 : glitch +;; 184 B8 : glitch +;; 185 B9 : oddish +;; 186 BA : gloom +;; 187 BB : vileplume +;; 188 BC : bellsprout +;; 189 BD : weepenbell +;; 190 BE : victriebell +;; 191 BF : glitch +;; 192 C0 : glitch +;; 193 C1 : glitch +;; 194 C2 : glitch +;; 195 C3 : glitch +;; 196 C4 : glitch +;; 197 C5 : glitch +;; 198 C6 : glitch +;; 199 C7 : charizard-glitch +;; 200 C8 : glitch +;; 201 C9 : nidorino-glitch +;; 202 CA : glitch +;; 203 CB : magnemite-clitch +;; 204 CC : glitch +;; 205 CD : glitch +;; 206 CE : glitch +;; 207 CF : glitch +;; 208 D0 : glitch +;; 209 D1 : glitch +;; 210 D2 : nidorino-glitch +;; 211 D3 : glitch +;; 212 D4 : glitch +;; 213 D5 : bulbasaur-glitch +;; 214 D6 : charmander-glitch +;; 215 D7 : glitch +;; 216 D8 : glitch +;; 217 D9 : glitch +;; 218 DA : glitch +;; 219 DB : glitch +;; 220 DC : glitch +;; 221 DD : glitch +;; 222 DE : glitch +;; 223 DF : glitch +;; 224 E0 : glitch +;; 225 E1 : glitch +;; 226 E2 : glitch +;; 227 E3 : glitch +;; 228 E4 : glitch +;; 229 E5 : glitch +;; 230 E6 : glitch +;; 231 E7 : glitch +;; 232 E8 : seaking-glitch +;; 233 E9 : nidorino-glicth +;; 234 EA : glitch +;; 235 EB : glitch +;; 236 EC : glitch +;; 237 ED : glitch +;; 238 EE : glitch +;; 239 EF : glitch +;; 240 F0 : charizard-glitch +;; 241 F1 : nidorino-glitch +;; 242 F2 : glitch +;; 243 F3 : glitch +;; 244 F4 : glitch +;; 245 F5 : glitch +;; 246 F6 : glitch +;; 247 F7 : bulbasaur-glitch +;; 248 F8 : bulbasaur-glitch* +;; 249 F9 : glitch +;; 250 FA : glitch +;; 251 FB : glitch +;; 252 FC : oddish-glitch +;; 253 FD : glitch +;; 254 FE : glitch +;; 255 FF : glitch \ No newline at end of file diff -r d92f7d68445a -r 9ca350a476f0 save-states/crazy-pidgeot.sav Binary file save-states/crazy-pidgeot.sav has changed diff -r d92f7d68445a -r 9ca350a476f0 save-states/pika-no-1.sav Binary file save-states/pika-no-1.sav has changed