MegaTutorial: Scripting desde cero ¡FINALIZADO!

Avisos

Like Tree76Gracias

Respuesta
 
Herramientas Desplegado
  #11  
23/08/2016
Predeterminado Respuesta: Mega-tutorial: Scripting desde cero
Magnífico mega-tuto, me suscribo al tema para leerlo cuando me apetezca empezar con los scripts en mi hack, ya he agarrado las nociones básicas pero no viene mal repasar de vez en cuando

Mi proyecto

  #12  
24/08/2016
Predeterminado Respuesta: Mega-tutorial: Scripting desde cero
¡ACTUALIZADO CON EL TUTORIAL DE CREAR UN POKEMART Y CODIGOS SOBRE EL DINERO!

Pokemart / Dinero




Abrir un Pokemart

Con el comando pokemart podemos abrir una tienda fácilmente. Lo único que tendremos que hacer nosotros es indicar que objetos tendrá nuestro pokemart, lo cual indicaremos en un offset al utilizar el comando pokemart, de tal forma que se utiliza así:

Código:
lock
faceplayer
pokemart @objetos
release
end

Elegir objetos

Al igual que cuando utilizamos un msgbox o un applymovement, en el comando pokemart tenemos un offset (@objeto) extra en el cual indicaremos los objetos que tendrá nuestra tienda.

Y esto se hace con #raw word 0x(nº objeto)

Nº objeto es el número del objeto que utilizamos en giveitem por ejemplo. Es decir, tenéis que poner el número de acuerdo a la lista que os había dado cuando aprendimos el giveitem. Os pongo la lista para que os sea más cómodo:

Lista de objetos


Master Ball 1
Ultra Ball 2
Great Ball 3
Poké Ball 4
Safari Ball 5
Net Ball 6
Dive Ball 7
Nest Ball 8
Repeat Ball 9
Timer Ball 10
Luxury Ball 11
Premier Ball 12
Potion 13
Antidote 14
Burn Heal 15
Ice Heal 16
Awakening 17
Parlyz Heal 18
Full Restore 19
Max Potion 20
Hyper Potion 21
Super Potion 22
Full Heal 23
Revive 24
Max Revive 25
Fresh Water 26
Soda Pop 27
Lemonade 28
Moomoo Milk 29
Energypowder 30
Energy Root 31
Heal Powder 32
Revival Herb 33
Ether 34
Max Ether 35
Elixir 36
Max Elixir 37
Lava Cookie 38
Blue Flute 39
Yellow Flute 40
Red Flute 41
Black Flute 42
White Flute 43
Berry Juice 44
Sacred Ash 45
Shoal Salt 46
Shoal Shell 47
Red Shard 48
Blue Shard 49
Yellow Shard 50
Green Shard 51
HP Up 63
Protein 64
Iron 65
Carbos 66
Calcium 67
Rare Candy 68
PP Up 69
Zinc 70
PP Max 71
Guard Spec. 73
Dire Hit 74
X Attack 75
X Defend 76
X Speed 77
X Accuracy 78
X Special 79
Poké Doll 80
Fluffy Tail 81
Super Repel 83
Max Repel 84
Escape Rope 85
Repel 86
Sun Stone 93
Moon Stone 94
Fire Stone 95
Thunderstone 96
Water Stone 97
Leaf Stone 98
Tinymushroom 103
Big Mushroom 104
Pearl 106
Big Pearl 107
Stardust 108
Star Piece 109
Nugget 110
Heart Scale 111
Orange Mail 121
Harbor Mail 122
Glitter Mail 123
Mech Mail 124
Wood Mail 125
Wave Mail 126
Bead Mail 127
Shadow Mail 128
Tropic Mail 129
Dream Mail 130
Fab Mail 131
Retro Mail 132
Cheri Berry 133
Chesto Berry 134
Pecha Berry 135
Rawst Berry 136
Aspear Berry 137
Leppa Berry 138
Oran Berry 139
Persim Berry 140
Lum Berry 141
Sitrus Berry 142
Figy Berry 143
Wiki Berry 144
Mago Berry 145
Aguav Berry 146
Iapapa Berry 147
Razz Berry 148
Bluk Berry 149
Nanab Berry 150
Wepear Berry 151
Pinap Berry 152
Pomeg Berry 153
Kelpsy Berry 154
Qualot Berry 155
Hondew Berry 156
Grepa Berry 157
Tamato Berry 158
Cornn Berry 159
Magost Berry 160
Rabuta Berry 161
Nomel Berry 162
Spelon Berry 163
Pamtre Berry 164
Watmel Berry 165
Durin Berry 166
Belue Berry 167
Liechi Berry 168
Ganlon Berry 169
Salac Berry 170
Petaya Berry 171
Apicot Berry 172
Lansat Berry 173
Starf Berry 174
Enigma Berry 175
Brightpowder 179
White Herb 180
Macho Brace 181
Exp. Share 182
Quick Claw 183
Soothe Bell 184
Mental Herb 185
Choice Band 186
King's Rock 187
Silverpowder 188
Amulet Coin 189
Cleanse Tag 190
Soul Dew 191
Deepseatooth 192
Deepseascale 193
Smoke Ball 194
Everstone 195
Focus Band 196
Lucky Egg 197
Scope Lens 198
Metal Coat 199
Leftovers 200
Dragon Scale 201
Light Ball 202
Soft Sand 203
Hard Stone 204
Miracle Seed 205
Blackglasses 206
Black Belt 207
Magnet 208
Mystic Water 209
Sharp Beak 210
Poison Barb 211
Nevermeltice 212
Spell Tag 213
Twistedspoon 214
Charcoal 215
Dragon Fang 216
Silk Scarf 217
Up-grade 218
Shell Bell 219
Sea Incense 220
Lax Incense 221
Lucky Punch 222
Metal Powder 223
Thick Club 224
Stick 225
Red Scarf 254
Blue Scarf 255
Pink Scarf 256
Green Scarf 257
Yellow Scarf 258
Mach Bike 259
Coin Case 260
Itemfinder 261
Old Rod 262
Good Rod 263
Super Rod 264
S.S. Ticket 265
Contest Pass 266
Wailmer Pail 268
Devon Goods 269
Soot Sack 270
Basement Key 271
Acro Bike 272
PokéBlock Case 273
Letter 274
Eon Ticket 275
Red Orb 276
Blue Orb 277
Scanner 278
Go-goggles 279
Meteorite 280
Rm. 1 Key 281
Rm. 2 Key 282
Rm. 4 Key 283
Rm. 6 Key 284
Storage Key 285
Root Fossil 286
Claw Fossil 287
Devon Scope 288
TM01 289
TM02 290
TM03 291
TM04 292
TM05 293
TM06 294
TM07 295
TM08 296
TM09 297
TM10 298
TM11 299
TM12 300
TM13 301
TM14 302
TM15 303
TM16 304
TM17 305
TM18 306
TM19 307
TM20 308
TM21 309
TM22 310
TM23 311
TM24 312
TM25 313
TM26 314
TM27 315
TM28 316
TM29 317
TM30 318
TM31 319
TM32 320
TM33 321
TM34 322
TM35 323
TM36 324
TM37 325
TM38 326
TM39 327
TM40 328
TM41 329
TM42 330
TM43 331
TM44 332
TM45 333
TM46 334
TM47 335
TM48 336
TM49 337
TM50 338
HM01 339
HM02 340
HM03 341
HM04 342
HM05 343
HM06 344
HM07 345
HM08 346
Oak's Parcel 349
Poké Flute 350
Secret Key 351
Bike Voucher 352
Gold Teeth 353
Old Amber 354
Card Key 355
Lift Key 356
Helix Fossil 357
Dome Fossil 358
Silph Scope 359
Bicycle 360
Town Map 361
VS Seeker 362
Fame Checker 363
TM Case 364
Berry Pouch 365
Teachy TV 366
Tri-pass 367
Rainbow Pass 368
Tea 369
Mysticticket 370
Auroraticket 371
Powder Jar 372
Ruby 373
Sapphire 374


Imaginemos que queremos un pokemart que nos venda simplemente pokeballs y pociones. Pues quedaría así:

Código:
lock
faceplayer
pokemart @objetos
release
end

#org @objetos
#raw word 0x4
#raw word 0xD
¿Por qué 4 y D? Porque en la lista la pokeball es la numero 4, y la pocion en la numero 13. Si pasamos 4 y 13 a hexadecimal nos quedan 4 y D respectivamente.


Givemoney

Con este comando le podréis dar dinero a player:

Código:
givemoney 0x(cantidad a dar) 0x0
Es simple, solo hay que poner la cantidad de dinero a dar. El único "problema" que se os puede presentar es que la cantidad la tenéis que poner en hexadecimal, de tal forma que si queréis dar 1.000 de dinero tenéis que poner así:

Código:
givemoney 0x3E8 0x0

Paymoney

Este es igual que el anterior, solo que este en vez de dar dinero, quita al jugador dinero.

Código:
paymoney 0x(cantidad de dinero a quitar) 0x00

checkmoney

Vamos a ver el comando para comprobar si nuestro jugador tiene una cierta cantidad de dinero. Este comando es realmente el más importante, ya que si queremos hacer un script donde nuestro jugador tenga que pagar, tenemos que comprobar si tiene esa cantidad de dinero previamente.

Primero, tenemos que utilizar este comando:

Código:
checkmoney 0x(cantidad a comprobar) 0x00
En este comando fijamos la cantidad que queremos comprobar si se tiene.

¿Os acordáis de la variable 800D? La cual es una variable reservada para el juego donde se almacenan cierto valores dependiendo del comando que utilicemos. En este caso, cuando utilizamos el comando checkmoney, si tenemos el dinero o más, esta variable tendrá el valor 1, y en caso contrario tendrá el valor cero. Entonces, lo que tendremos que hacer es comprobar si la variable 800D tiene el valor 1 o mayor, y en ese caso continuar el script en otro offset. Así:

Código:
checkmoney 0x3E8 0x0
compare 0x800D 0x1
if 0x0 goto @notener
Aquí hemos puesto la siguiente condición: si la variable 800D tiene un valor inferior (if 0x0) a uno (compare 0x800D 0x1), iremos al offset en el cual nos dirán que no tenemos el dinero suficiente (goto @notener)

Recordad que también podéis utilizar el compare LAST_RESULT 0x1


Enseñar el dinero

Normalmente, cuando hacemos algún script relacionado con el dinero, ponemos el cuadrado que nos indica el dinero que tenemos actualmente. Pues esto lo podemos hacer con un comando. Hay uno para enseñar la caja del dinero y otro para volverla ocultar.

Si queremos enseñar la caja del dinero pondremos:

Código:
showmoney 0x(X) 0x(Y) 0x0
X e Y son las coordenadas donde queremos que aparezca nuestra caja (ya hemos dado como mirar las coordenadas en el mapa), y el 0x00 es por defecto.

Si queremos que nuestro caja salga en la esquina superior izquierda, pondremos esto:

Código:
showmoney 0x0 0x0 0x0
Para que desaparezca la caja del dinero, pondremos un comando muy parecido:

Código:
hidemoney 0x(X) 0x(Y)
Hay que volver a poner las coordenadas puestas previamente en el showmoney.


~Un saludo
Xabier Arias en skype.

pd: ¡Ya me va skype!
  #13  
30/08/2016
Predeterminado Respuesta: Mega-tutorial: Scripting desde cero
Muchas gracias. muy bien explicado.
Gracias: Ánima
  #14  
14/10/2016
Predeterminado Respuesta: Mega-tutorial: Scripting desde cero
Actualizado con un tutorial sobre Givepokemon y poner motes!
Xabier Arias en skype.

pd: ¡Ya me va skype!
  #15  
14/10/2016
Predeterminado Respuesta: Mega-tutorial: Scripting desde cero
Genialix prro XD
Todo bien explicado, bien planteado, veo que le metes mucha gana a esto 7W7, está muy bueno, y de seguro que los nuevos la apreciarán tanto como yo (eso espero), me la he descargado para vicharla, siempre se me olvidan algunos comandos cuando no scripteo a menudo, me sirve de mucho.

Jrachiachj

Salu2

PD: Me gusta lu bunitu que redactas (?)
Gracias: Ánima
  #16  
05/11/2016
Predeterminado Respuesta: Mega-tutorial: Scripting desde cero
Actualizado con dos tutoriales más:

-Trainers y wildbattles
-Scripts de gatillo y Variables (2)
Xabier Arias en skype.

pd: ¡Ya me va skype!

Última edición por Ánima; 29/11/2016 a las 21:25
  #17  
Hace 3 Semanas
Predeterminado Respuesta: Mega-tutorial: Scripting desde cero - Actualizado
Actualizado con el tutorial que explica los scripts de nivel.
Xabier Arias en skype.

pd: ¡Ya me va skype!
  #18  
Hace 3 Semanas
Predeterminado Respuesta: Mega-tutorial: Scripting desde cero - Actualizado
Para mí, el que mejor explicado está.
Grazas e gran traballo!
  #19  
Hace 2 Semanas
Predeterminado Respuesta: Mega-tutorial: Scripting desde cero - Actualizado
Pues aún le faltan varios comandos vitales, pero con lo que tienes esta más que completo, excelente para novatos
Gracias: Ánima
Mis Premios

  #20  
Hace 2 Semanas
Predeterminado Respuesta: Mega-tutorial: Scripting desde cero - Actu 31-12
Actualizado con tutoriales explicando setmaptiles y buffers!
Xabier Arias en skype.

pd: ¡Ya me va skype!
Respuesta

Herramientas
Desplegado

Permisos para publicar mensajes
No puedes crear nuevos temas
No puedes responder mensajes
No puedes subir archivos adjuntos
No puedes editar tus mensajes

Los BB code están Activado
Los Emoticones están Activado
El código [IMG] está Activado
El Código HTML está Desactivado
Trackbacks are Activado
Pingbacks are Activado
Refbacks are Desactivado



Extra
Estilo clásico
La franja horaria es GMT +1. Ahora son las 00:37.