Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- ====== Tools: ======
- Notepad++ - for opening .erb, .erh, .csv; but any text editor you like that supports Shift-JIS (Japanese encoding) will do
- https://notepad-plus-plus.org/
- Translation Aggregator - machine translation tool, download in emuera git
- Chiitrans Lite - machine translation tool, download in emuera git and discord server in #updates
- ATLAS v14 - offline dictionary used in TA and ChiitransL, download in discord server in #updates
- Machine translation tools quick guide:
- https://imgur.com/SKnjnpd
- ====== Basics: ======
- Everything that's after any variant of PRINT is pretty much waiting for your translation
- PRINT - simply write stuff, in one line, without any variables
- PRINTFORM - can use variables (strings: %CALLNAME%, and numbers: {LOCAL})
- PRINTL, PRINTFORML - works accordingly, but after writing stuff it goes to next line
- PRINTW, PRINFORMW - same as above but game stops and waits for a button/mouse press from player
- You can add/remove/change all PRINT instructions as you want, until your sentence is PERFECT (correct lines, stops, etc.)
- Variants of PRINTs with "S" or "V" at the end shouldn't be translated, they are for quick use of variables without having to write %% or {}
- CALL whatever_in_japanese - Don't translate these, it's for calling functions
- BUT if structure is something like CALL xxx("text","othertext",1) you most likely can translate what's inside quotation marks
- ; - (semicolon) A comment, often used to explain some stuff, can be put at the beginning of line (as first character), you can write whatever you want there
- [SKIPSTART] [SKIPEND] - comment for disabling whole segment of code between start and stop
- %CALLNAME:MASTER%, %CALLNAME:TARGET% etc. - if used with PRINTFORM it'll show character's name
- %HIS_HER(TARGET)%, %HIM_HER(PLAYER)% %HE_SHE(TARGET)% (sometimes also %TOSTR_THIRD(TARGET)%) - gets gender pronoun
- You can also start with capital letter when you add ",1" after the variable like: %any_function(TARGET,1)%
- --- Variables: ---
- MASTER, TARGET, PLAYER, ASSISTANT - Special variables that hold ID of your and characters that you currently interact with
- CHARANUM - total number of characters available in the game (read only)
- If you use any variation of PRINTFORM you can use variables like names of characters, numbers for stats or custom functions
- {} - is for numbers,
- %% - is for text
- ====== About statistics and flags from .csv files: ======
- There are arrays for different variables divided into "groups" that are in CSV folders
- TALENT - Things that are in Talent.csv file
- ABL - in Abl.csv
- BASE - in BASE.csv
- etc.
- When you want to show some statistic, let's say ENE (energy) of player character with PRINTFORM, you use something like this: {BASE:MASTER:ENE}
- There is also a way to show name from .csv file for example it you use: %ABLNAME:LOCAL% it will show corresponding name for number, like for eraTW with LOCAL = 4 it'll show "MSense"
- Ofc instead ABLNAME you can also use things like BASENAME, EXPNAME, ITEMNAME etc.
- ====== Translating .csv files: ======
- Things like "Virgin" talent or "C Sensitivity" ability are located in .csv files in /CSV/ folder ("TALENT.csv", "ABL.csv", [...])
- DON'T translate them directly, we now have modified emuera engine for that
- To translate it, you'll need to create a new file named accordingly "TALENT_TR.csv", "ABL_TR.csv", etc. Syntax there is:
- 処女,Virgin
- 自制心,Self Control
- ====== Examples of basic emuera syntax: ======
- ---PRINT instructions----------------------------
- ;suffixes for PRINT instructions (in order of possible usage):
- PRINT(SINGLE|PLAIN)(V|S|FORM|FORMS|FORMV)(K|D)(L|W)
- SINGLE - cuts the part of text that normally would get shown in the next line
- PLAIN - disables ability for text to be recognized as button
- V - for numbers ({}); instead of "PRINTFORM {LOCAL}" you can write "PRINTFORMV LOCAL"
- S - equivalent of strings (%%)
- K - something with forcing kana (extremely rarely used)
- D - ignores color change from SETCOLOR
- L - makes line after printing the text
- W - waits for player input
- ;example of PRINTFORM usage:
- LOCALS = This
- LOCAL = 8
- PRINTFORML %LOCALS% can use strings, and numbers like {LOCAL}
- result: "This can use strings, and numbers like 8<next line>"
- ;short form of IF inside PRINTFORM
- PRINTFORM ARG is \@ARG > 5 ? more than 5 # less or equal to 5 \@ stuff
- PRINT [15] button number 15
- PRINTBUTTON "text that will highlight, without need to add [16]", 16
- ---Conditional statements------------------------
- IF ARG >= 50
- ;if ARG is more or equal 50
- ELSEIF ARG == 20
- ;if ARG equals 20
- ELSE
- ;every other condition
- ENDIF
- ------------------------
- SIF ARG == 420
- ;short IF, executes only one instruction that's directly under it
- ------------------------
- ;Even shorter IF
- PRINTFORML If inside the PRINTFORM instructions: \@ IS_MALE(TARGET) ? he # she \@.
- ;note that it ignores the spaces used around the edges of he/she
- ---Case------------------------------------------
- SELECTCASE ARG
- CASE 0
- ;ARG == 0
- CASE 5 TO 10
- ;ARG from 5 to 10
- CASE 11, 15, 69
- ;cases 11 15 and 69
- CASE IS > 100
- ;cases more than 100
- CASEELSE
- ;other cases
- ENDSELECT
- ---Loops-----------------------------------------
- FOR LOCAL, 0, 42
- ;loop that will go from 0 to 42 (excluding 42)
- ;LOCAL is variable holding of current loop count
- SIF LOCAL == 5
- CONTINUE ;it skips case 5 and goes to next one - that is 6
- ;stuff
- SIF LOCAL == 12
- BREAK ;exits the loop completely, ignoring whether it's the last time (42 in this case)
- NEXT
- ------------------------
- WHILE !LOCAL
- ;this continues as long as LOCAL == 0
- WEND
- ------------------------
- REPEAT 5
- ;repeats itself 5 times
- ;uses global variable COUNT for ... counting
- REND
- ------------------------
- ---Changing text colors--------------------------
- ;Changing text colors
- SETCOLOR 204, 0, 102 ;in rgb
- SETCOLOR 0xff00ff ;in hex
- SETCOLOR C_RED ;it also supports constant variables
- SETCOLOR FOO("red") ;and functions
- RESETCOLOR ;use this when you're finished with fancy coloring
- ==================================================================================================
- ;example function construction:
- @USELESS_FUNCTION(ARG)
- LOCALS:1 = ;need to clear it because if you repeat this function the "+=" will add text to string again and again
- SIF !IS_MALE(ARG)
- LOCALS:1 += "pussy and " ;when using += for a string you'll have to use quotes
- LOCALS:1 += "asshole" ;(this also makes adding space at the edge of string possible)
- FOR LOCAL, 0, CHARANUM ;CHARANUM is constant that means number of static (in chara folder) characters
- LOCAL:1 ++ ;increment LOCAL:1 (it's short for LOCAL:1 = LOCAL:1 + 1)
- NEXT
- ;(you can add spaces at the edges of PRINTs btw)
- PRINTFORM %CALLNAME:ARG%'s %LOCALS:1% got rekt
- SETCOLOR 255,0,0
- PRINTFORM {LOCAL:1}
- RESETCOLOR
- PRINTW times ;pause and line
- RETURN ;it returns to previously used function that used "CALL USELESS_FUNCTION(TARGET)"
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement