We need a guide to MV's base scripts!

ロリ先輩

ロリだけど先輩だよ
Veteran
Joined
Mar 13, 2012
Messages
379
Reaction score
96
Primarily Uses
The debugger in Invision Power Board is not useful for SQL at all. SQL is handled via PHPMyAdmin and other SQL tools. It is useful because they have a SDK and way about coding. When you create a game engine with a base script, you got to have a SDK or something to give developers information or else you got no standards. Basically, means that I might as well code my own Javascript engine. ;)
@Helladen What I was saying is that guides and comprehensive debuggers are important when you're in a polyglot environment, like IPB. Your backend and frontend speak two different languages- just like RMXP/VX/VXA, where you had a portion of the code existing as native bindings and hidden away.

In the case of MV, the only component not in your main language is the executable, which is just a client web browser with node wrapped on v8. Pixi, lz-string and fpsmeter might be minified, but they're easily obtainable online in expanded source form. There isn't any obfuscated or hidden code, moreover, all the un-minified code included is very readable. All the information is there, and it isn't cryptic or hard to gleam. JavaScript may not be as readable or as expressive as Ruby, but it's a lot more readable and expressive than a compiled language. I'd actually debate that, of the Pixi-based frameworks, RPG Maker MV is probably the least complex and easiest to understand, especially next to Phaser. 
 

Helladen

Deviant Designer
Veteran
Joined
Jul 13, 2012
Messages
635
Reaction score
188
First Language
English
I'd actually debate that, of the Pixi-based frameworks, RPG Maker MV is probably the least complex and easiest to understand, especially next to Phaser. 

Working on it is absolutely fine for me. I was just saying it is easier to program from scratch than to use an existing framework without a SDK or some sort. I replied to this at first suggesting that people didn't need this, but later changed my mind to suggest rather than writing a bunch of documentation - having an easy debugger to let you know what's going on would allow you to understand how the base script works. But having documentation is good enough to be honest. I was just trying to feed more ideas into the discussion to make MV more accessible to more programmers other than those who have used RPG Maker for a long time. There's a lot of code you have to read and understand, this takes a long time and feel like there's ways to make this easier to jump into.


I totally disagree, IPB has debugger because it has a SDK and standard for plugin makers. RPG Maker should do the same. We don't need a debugger cause it has SQL, you are totally wrong about this. I am a plugin developer for IPS.
 
Last edited by a moderator:

ロリ先輩

ロリだけど先輩だよ
Veteran
Joined
Mar 13, 2012
Messages
379
Reaction score
96
Primarily Uses
@Helladen I'm saying that comprehensive debuggers and guides are a -must have- when you're in a polyglot environment (i.e. IPB, with PHP, JS, and SQL). However, that's not the case in RM, where it isn't polyglot (only JS). A comprehensive debugger, SDK, guide...etc. are very important in situations where you might not be aware of everything, especially when you don't have access to source (like on OS X/iOS development, or Unity), or where the code is too complex to reference (like Unreal Engine, IPB)

The only time I can imagine that you need such a comprehensive toolset in RPG Maker is if you're doing a very hefty rewrite of the base classes. Upgrading to a newer version of Pixi, or porting it to another JS framework, as examples. If you're writing plugins that add new menus, overhaul combat, or even work with character data, there's a pretty small subset of classes you need to access, and an even smaller subset that you need to inherit from. The code that pulls information from the database json is something you'll probably be consuming rather than rewriting, and is fairly self-documenting. You'll want to extend scenes and windows, but even then, that's a very narrow set of functions. Honestly, the best way to speed this up is with JSDoc headers- a short blurb on what the function does, a statement on what it takes, and a statement on what it spits out as a return value. MV's code is well written, very accessible, and doesn't rely on any obfuscated or overly complex bits that you might want to look at. It doesn't need the hand holding of a guide at all, unlike a more complex and expansive codebase.

Edit: If you want to understand the code, yes, there's a quite a bit of code. If you want to understand the pieces you have to use? Not so much.
 
Last edited by a moderator:

Helladen

Deviant Designer
Veteran
Joined
Jul 13, 2012
Messages
635
Reaction score
188
First Language
English
Having a debugger in every game engine is a must. I don't care if it is just pure JS or pure HTML5. If I never touched RPG Maker before, it is a lot to learn and having a debugger will make this process much easier. I have been scripting since RPG Maker XP and still haven't been to catch up to most of the good scripters. I can write software and game engines and all that, so it isn't that I am unable to program or not, but rather the game engine has a lot to it that I may not be willing to learn.
 

Tsukihime

Veteran
Veteran
Joined
Jun 30, 2012
Messages
8,564
Reaction score
3,848
First Language
English
Having a debugger in every game engine is a must. I don't care if it is just pure JS or pure HTML5. If I never touched RPG Maker before, it is a lot to learn and having a debugger will make this process much easier. I have been scripting since RPG Maker XP and still haven't been to catch up to most of the good scripters. I can write software and game engines and all that, so it isn't that I am unable to program or not, but rather the game engine has a lot to it that I may not be willing to learn.


So, do you have a proposal for an MV debugger?


That is, a proposal which lists a number of features that would come with the debugger, which would make it useful in such a way that it is 


1. Worth the time building, and


2. People will use it


Preferably opened as a separate thread since it would be more noticeable.

So are you saying that there doesn't really have to be a guide in that case? From what I'm reading of what you're saying, and from what I understand myself, I would say that there really doesn't have to be more than there already is. I really think that if one doesn't know classes than it's better to go on youtube and just follow a series of javascript tutorials and w3schools guides or something and learn. The point I'm always generally trying to make, is that rpg maker mv is the most exciting one to date, as we have access to the core engine, and with html5 it's deployable on so many platforms.


If one can't find a good guide on how rpg maker mv is put together, there are tons of rpg maker vx ace ones about it's classes and how they're laid out. They really couldn't have written it any more organized and simply than it already is.


Sorry, don't have time for a longer reply at the moment...


As much as that makes sense to me as a developer, from a user point of view, I would prefer to have everything in one spot, even if the same information exists in a million different places.


And from a business point of view, if I can teach people what they need in order to understand the rest of the material, then that is only an advantage for me because it would give my products more credibility and a more all-in-one experience.


Not only that, why should people go to another person's youtube channel or w3schools? They're just learning plain old javascript, in a way that may not be fun. The advantage of explaining things yourself is that you can tie it directly with the material that you are writing about.


As for "tons of Ace guides", can you provide a list of these? Like maybe 10 or so?
 
Last edited by a moderator:

MenaKatep

Veteran
Veteran
Joined
May 11, 2016
Messages
67
Reaction score
24
First Language
English
Primarily Uses
I'll admit I didn't read through everything in the thread but did anyone suggest a community effort? Maybe a Google doc with a few people on it and you can accept changes made to it or a couple people can I think. Unless some kind of documentation for rpg maker's js core isn't what's being talked about now. Just thought I'd try to make a suggestion unless someone already made it! :)
 

Galenmereth

Retired
Veteran
Joined
May 15, 2013
Messages
2,248
Reaction score
2,158
First Language
English
Primarily Uses
N/A
To be on topic, there is a lot of powerful debugging tools in the console. For example, to debug game objects just type $ and you'll get a list of all global game objects, like maps ($dataMaps), current map data ($gameMap), player data ($gamePlayer) etc.


To see how code moves around, learn to use breakpoints in the Sources tab. You can then get a full stack trace at whatever point in the code you want.


I will agree that the documentation help file is severely sub-par and that the core scripts are a mess organizationally (and code-wise a lot of places, too). But it's still not too hard to get a grasp of the flow of things. Just experiment a lot in the console and with breakpoints, and use console.log() cleverly (log objects and inspect them) and you'll get far.


If you plan on writing a lot of custom scripts, I'd advice trying out TypeScript, which gives you that strict type interpreter goodness. It can easily be used alongside the core files by creating declaration interfaces for the core objects you use so that you can still get strict typing without rewriting it all.
 

Shaz

Veteran
Veteran
Joined
Mar 2, 2012
Messages
40,108
Reaction score
13,713
First Language
English
Primarily Uses
RMMV
Well then i will ask shaz to put it back up 


I'm sorry - mods don't play favourites, and I'm not going to break the rules for you.  If you post in a thread, it needs to be on topic, or it's spam.
 

zharth

Veteran
Veteran
Joined
Feb 11, 2014
Messages
39
Reaction score
13
First Language
English
Primarily Uses
I'd like to add my support to the main idea presented in this thread. Even back when I started playing with VX Ace, I quickly came to the same conclusion. I've studied computer programming in high school and college, and I have a very logical, analytical mind, so it always came second nature to me. I know the basics of the logic behind computer programming. So while Ruby and even Javascript were foreign languages to me, the beginner's scripting advice that people usually give - learn the language - never seemed very helpful to me.


Learning the language, to me, is basically a matter of syntax - and that's easy enough to look up. I already know how to speak - how to construct sentences and paragraphs to get my point across. Learning a new set of words is rudimentary. In order to script, what I need is a working knowledge of the text I'm actually modifying. Not how to parse or code in the language, but how this *particular* program runs. In other words, not a guide to Javascript - a guide to RPG Maker MV. And while diving in and simply learning it through experience is the general way of doing that, it's rather elitist for anyone to suggest that it wouldn't be a great community resource for someone - anyone - to produce guides on how this particular program runs.


Not because RPG Maker is poorly coded (it's not), or is an especially hard program to figure out, but just because there is a lot of code there to sift through, and it's so modular that it's often hard to get an intuitive grasp of the way a certain function operates, because you're jumping around between several methods, often in several different classes. It's like opening up a dictionary, looking up a word, and being directed to several other definitions before you finally figure out what the word actually means. If you've already done a lot of this work - as any of us scripters have had to - I sympathize. But it'd still be helpful for others to have a shortcut. There's no virtue in being willfully obtuse.
 

Users Who Are Viewing This Thread (Users: 0, Guests: 1)

Latest Threads

Latest Profile Posts

Our latest feature is an interview with... me?!

People4_2 (Capelet off and on) added!

Just beat the last of us 2 last night and starting jedi: fallen order right now, both use unreal engine & when I say i knew 80% of jedi's buttons right away because they were the same buttons as TLOU2 its ridiculous, even the same narrow hallway crawl and barely-made-it jump they do. Unreal Engine is just big budget RPG Maker the way they make games nearly identical at its core lol.
Can someone recommend some fun story-heavy RPGs to me? Coming up with good gameplay is a nightmare! I was thinking of making some gameplay platforming-based, but that doesn't work well in RPG form*. I also was thinking of removing battles, but that would be too much like OneShot. I don't even know how to make good puzzles!
one bad plugin combo later and one of my followers is moonwalking off the screen on his own... I didn't even more yet on the new map lol.

Forum statistics

Threads
106,035
Messages
1,018,454
Members
137,821
Latest member
Capterson
Top