Shiny Quagsire
I'm Still Alive, Elsewhere
- 697
- Posts
- 15
- Years
- Age 27
- Hoenn Safari Zone
- Seen Aug 8, 2020
Script Editor Advance
This is the SEA, as you can see...
This is yet another tool made by me, Shiny Quagsire. It's a simple yet powerful script editor designed to be fast, speedy, and cross-platform.
^ That's Linux by the way. ^
This is the SEA, as you can see...
This is yet another tool made by me, Shiny Quagsire. It's a simple yet powerful script editor designed to be fast, speedy, and cross-platform.
![[PokeCommunity.com] [Cross-Platform] Script Editor Advance [WIP] [PokeCommunity.com] [Cross-Platform] Script Editor Advance [WIP]](https://i569.photobucket.com/albums/ss135/mtinc2/SEA_zps009da530.png)
^ That's Linux by the way. ^
Why?
Because the support for Linux, Mac, and BSD's sucks. That's my honest reason for making this (and for porting NSE 2.x to Mono). Also, I prefer working on familiar code, which is why I didn't just port some other scripting editor. Not to mention I wanted to craft an editor from the viewpoint of a programmer/scripter, and thus my editor was born.
How?
SEA is currently written in Java, and uses an SQLite database with information on each individual scripting command available to our current knowledge, which information like it's name, bytecode, description, number of arguments, argument lengths, etc. Using this, it makes compiling, (soon) decompiling, and error checking fast, and efficient. I don't work full time on this obviously because of school, sports, and other activities. I tend to go on and off on my projects. I'll do a ton of work on it, then get bored and switch to something else. I do usually return to these things though if I have some suggestions/goals that people want.
(Planned) Features
- Cross-Platform using Java
- Open-Source!
- Fast Compiling using SQLite
- Error checking
- Easy command aliases - Shorten your code to help readability!
- Intuitive syntax
- and more!
How's Progress?
Please note that this list is subject to change, and more goals will be added once I get some ideas of what to add.
- Compiling - [|||||||||-] 90%, just need to check for bugs!
- Error checking - [||||||||||] 100%
- Live Error Checking (in text, like a spell checker) [----------] 0%, not too much of a priority, but I'd like some Eclipse/Visual Studio style error checking since I'm going to be using this.
- Decompiling - [|||||||||-] 95%, Decompiling is pretty much perfect! :D (Subject to bugs though.)
- Syntax Highlighting - [|||||||||-] 90%, subject to bugs, but pretty much done. Issues with if(...) command
- ROM Writing - [||||||||||] 100%, done.
- ROM Reading - [||||||||||] 100%, done.
- ROM Debugging - [||||||||||] 100%, done.
- UI - [||||||||--] 80%, still need: command help,
log viewer, bytecode dump, built-in guide, etc.
Q: That sure looks a lot like XSE...
A Yes, yes it does. I designed it to be as familiar as possible while still providing useful additions.
Q: When will this be available?
A: As soon as I finish the decompiler, and add ROM Writing/Reading
Q: Have you even tested this at all, and how do you test it if you can't write to the rom?
A: Yes, I have. Currently it just dumps some bytecode to the console as well as some debugging informations/errors:
Code:
Code:
Set script search start to 8388608 (0x800000)
Set script start to 0x800000
Added section: start at 0x7fffff
Added section: msg at 0x80000c
Section contains message: Hello, World!
Script length in bytes (Decimal): 26
Compiled Dump:
6a 5a 0f 00 0c 00 80 08 09 02 6c 02 c2 d9 e0 e0
e3 b8 00 d1 e3 e6 e0 d8 ab ff
The newest build supports saving (I think, unless it's bugged...). Just use the Save button and test it in the game.
![[PokeCommunity.com] [Cross-Platform] Script Editor Advance [WIP] [PokeCommunity.com] [Cross-Platform] Script Editor Advance [WIP]](https://i569.photobucket.com/albums/ss135/mtinc2/Pokemon-Amethyst_zps859a5287.png)
Q: What's up with the calculator?
A: Copy and paste... Copy and paste...
Q: Your editor sucks. Can I suggest something to fix it?
A: Sure! I'm always open to suggestions, and if you feel that something in my scripting syntax or UI isn't right, I'll be more than happy to fix it.
Source Code
Currently, the source code is hosted on my GitHub account. You can visit it here.
Downloads
The current release is alpha ETU R3.
Reporting Bugs:
...
The entire source code has been pushed to the GitHub Repository. Some things you need to know when testing:
When submitting a bug, please use the following format:
- This is a DEBUGGING ALPHA. Use at your own risk on your hacks.
- Freespace checking has NOT been added yet, so it'll just overwrite at it's pleasure.
- Test with a plain Fire Red ROM using generic scripts, or extremely advanced scripts.
- Decompiling doesn't support command aliases yet! So in place of your if's and msgbox's you'll get preparemsgs, callstds, and if1's and if2's. Now it does! :D
Some features that are useful when debugging:
- Description (sometimes not needed)
- Date built (If you didn't build it yourself, just put ETU)
- Code Inputted (your script)
- Decompiled Code
- Log file - Use pastebin!
- Optional: In-Game screenshot of script. Not really needed, but nice.
And since this is a new script editor, feel free to ask questions! If something confuses you, I'll be happy to help.
- The logger - This can save a log with VERY useful information to me or any other bugfixers.
- The debugger - The little VBA icon will save your ROM with the byte modifications to a temporary location so you can test it without writing. The changes will NOT be written until you press the Save button. It opens it with the default emulator for your system, so you must have it set to VBA by default.
- The decompiler - This can give some useful output as well. Since the decompiler doesn't have hardly as many bugs as the compiler, you can often determine if the script will work just by decompiling.
Last edited: