Skeetendo

’Cause all games were better on the GBC

You are not logged in.

#1 2017-04-30 14:55:21

kaitokid
Member
Registered: 2017-04-30
Post 1/17

PROBLEM POKETEXT / PKSV

Hi guys, yesterday I began romhacking Pokemon Gold, my idea was to translate the text from the characters, but when I try to do it with Poketext, I don't know why the text box collapse at the end, and if I try to edit the text with PKSV the same, because when I want to translate the text I dont know how much text I can put on a line, and when I have to put the /, and I dont know what means /e /l /n.

If you guys could help me, and a beginner in this thread

Offline

#2 2017-04-30 16:04:21

Rangi
Member
Registered: 2016-05-09
Post 635/870

Re: PROBLEM POKETEXT / PKSV

If you've just started hacking Gen 2, I'd strongly suggest using the pokecrystal disassembly instead of directly editing a ROM with tools and hex editors. It's complete source code for Pokémon Crystal that you can write in a plain text editor like Notepad (or better yet, Notepad++ or Notepad2-mod). The instructions are pretty simple. Most of the modern Gen 2 help you'll find is for the disassembly. It's what the most active hackers here use, and there are tutorials to get you started. And the solutions are much simpler: like, the answer to "How do I change Prof. Oak's intro speech?" is "Edit _OakText1 to _OakText7 in text/common_3.asm and text/common_4.asm" instead of "Point PKSV to these addresses and make sure not to overwrite other text". ("Repointing" and "free space" are basically non-issues with pokecrystal; the assembler takes care of locating all the data, and translating labels like "_OakText1" into addresses.)

Anyway, it sounds like you're editing text that NPCs say? Most of it is in the maps/*.asm files. So if you talk with your rival in New Bark Town, you'll probably find his speech in maps/NewBarkTown.asm. Each line can have up to 18 characters. The "text" command begins a speech, "line" is the second line, "cont" scrolls down a line, and "para" starts again at the first line. There are some special characters which you can see in macros/charmap.asm. They're pretty self-explanatory, like "<PK>" for the small-caps "PK" character, or "…" for ellipsis. Also multi-character macros like "<POKE>", which expands to four characters "POKé", or "<PLAYER>", which expands to the player's name (could be seven characters).


Pokémon Polished Crystal (GitHub) — version 2.2.0 released
Pokémon Red★ and Blue★: Space World Edition (GitHub) — updated August 19!
Polished Map: pokered+pokecrystal map, tileset, and palette editor — version 3.5.1 released!

Offline

#3 2017-04-30 17:45:02

kaitokid
Member
Registered: 2017-04-30
Post 2/17

Re: PROBLEM POKETEXT / PKSV

thanks for replying and for the help man
can you answer me two questions?
The cygwin I have to install it at the beggining or I can install it at the end for compile the game?
With the pokecrystal can I edit trainer's name, wild pokemon and all that stuff or should I install some programmes which are easy to use?

Thanks men
Sorry if I say something stupid but i don't speak english fluently (I'm spanish) and I'm a beginner in this

Offline

#4 2017-04-30 18:06:23

Rangi
Member
Registered: 2016-05-09
Post 636/870

Re: PROBLEM POKETEXT / PKSV

You do the steps in order. First download Cygwin, then pick the "make git python gettext" packages during its setup, then download rgbds, then run "git clone --recursive https://github.com/pret/pokecrystal", then finally "make" should produce a 100% correct unmodified Crystal ROM. If that works, you can try editing some code and running "make" again to see your changes in-game.

You can edit literally anything. You don't need special tools for each thing because everything is in convenient text files already. Like, to edit wild Pokémon, look at the data/wild/*.asm files. The format is pretty obvious: map IDs, wild levels and species, seven entries for each map's morning, day, and night.

If you want to edit something but don't know where it is, try running "grep" (a search program). Like, one of the names for the boy trainer is "ALLAN". So if you want to edit that, run "grep -r ALLAN *" and see where that name is used. You get this:

$ grep -r ALLAN *
constants/event_flags.asm:1545: const EVENT_BEAT_POKEFANM_ALLAN
constants/trainer_constants.asm:575:    const ALLAN
main.asm:4786:  db "ALLAN@"
maps/Route6.asm:25:     trainer EVENT_BEAT_POKEFANM_ALLAN, POKEFANM, ALLAN, PokefanmAllanSeenText, PokefanmAllanBeatenText, 0, PokefanmAllanScript
trainers/trainers.asm:8260:     db "ALLAN@"

So, it looks like there's a Pokéfan NPC named Allan, but also the name is in main.asm. Open it in your text editor and you'll see:

MalePlayerNameArray: ; 882c9
    db "CHRIS@"
    db "MAT@"
    db "ALLAN@"
    db "JON@"
    db 2 ; displacement
    db " NAME @" ; title

And underneath:

FemalePlayerNameArray: ; 882f9
    db "KRIS@"
    db "AMANDA@"
    db "JUANA@"
    db "JODI@"
    db 2 ; displacement
    db " NAME @" ; title

Just ignore any code you don't understand (but don't delete or change it!), because the names themselves are obvious. Change one, run "make", reload your ROM in an emulator, and verify that it worked!

Anyway, you can learn a lot just by reading the files. Explore through them, find interesting filenames, try picking a thing you know exists and find which file it's in. Most of the code uses names for numbers, so instead of a meaningless 13, it'll say LT_SURGE or RATTATA or FLY or ESCAPE_ROPE or MUSIC_BICYCLE or EVENT_GOT_HM04_STRENGTH or... you get the idea. And there are no numeric pointers or addresses to memorize: instead, the labels have names that explain what they are (like "MalePlayerNameArray" above). Often there are "; comments" too. Basically it's possible for a beginner to figure out how things work by reading them, which would not be possible with a binary ROM.

Last edited by Rangi (2017-04-30 18:22:22)


Pokémon Polished Crystal (GitHub) — version 2.2.0 released
Pokémon Red★ and Blue★: Space World Edition (GitHub) — updated August 19!
Polished Map: pokered+pokecrystal map, tileset, and palette editor — version 3.5.1 released!

Offline

#5 2017-04-30 19:19:40

kaitokid
Member
Registered: 2017-04-30
Post 3/17

Re: PROBLEM POKETEXT / PKSV

Thanks for the help man, i will try it and i will do few test.
Is any tutorial here in the forum that can help me?
Thanks a lot, you're the only one who helped me

Offline

#6 2017-04-30 19:42:34

Rangi
Member
Registered: 2016-05-09
Post 637/870

Re: PROBLEM POKETEXT / PKSV

I linked to these tutorials before. If you run into specific problems, first try figuring them out yourself, then see if someone else has already experienced and solved the problem, or if not, post a specific question here explaining what you tried and how it failed.


Pokémon Polished Crystal (GitHub) — version 2.2.0 released
Pokémon Red★ and Blue★: Space World Edition (GitHub) — updated August 19!
Polished Map: pokered+pokecrystal map, tileset, and palette editor — version 3.5.1 released!

Offline

#7 2017-04-30 20:06:55

kaitokid
Member
Registered: 2017-04-30
Post 4/17

Re: PROBLEM POKETEXT / PKSV

Thank you again men, it's nice to be grateful to people like you who helped the newest, you're great men

Offline

#8 2017-04-30 20:08:31

Rangi
Member
Registered: 2016-05-09
Post 638/870

Re: PROBLEM POKETEXT / PKSV

Woman, actually, but thanks. :) Good luck with your hack!


Pokémon Polished Crystal (GitHub) — version 2.2.0 released
Pokémon Red★ and Blue★: Space World Edition (GitHub) — updated August 19!
Polished Map: pokered+pokecrystal map, tileset, and palette editor — version 3.5.1 released!

Offline

#9 2017-05-02 22:52:03

pagara123
Member
Registered: 2013-11-06
Post 107/118
Website

Re: PROBLEM POKETEXT / PKSV

i use pksv not poketext but i using poketext in intro monologue and the phone call system txt

at pksv this is the simple script

#org 0x(hex address)
jumptextfaceplayer(player text) 0x(2bit pointer) ' 0x(hex address of your 2 bit pointer)

#org 0x(hex address of your 2 bit pointer)
= \h53 hey! \ni see a \plot of berry \nin South Region\e

final text :
#org 0x123456
'-------------------------------
jumptextfaceplayer 0x745A ' 0x12345A

#org 0x12345A
= \h53 hey! \ni see a \plot of berry \nin South Region\e

Offline

#10 2017-05-03 13:28:25

kaitokid
Member
Registered: 2017-04-30
Post 5/17

Re: PROBLEM POKETEXT / PKSV

sorry to annoy again, but when i try to install cygwin in the cygwin directory i put easy_install pypng and it says that it doesn't find the file, and i don't know what to do

Offline

Board footer

Powered by FluxBB