[XP] Chaos Project Debug System

Started by Blizzard, January 09, 2008, 04:47:34 pm

Previous topic - Next topic

Blizzard

January 09, 2008, 04:47:34 pm Last Edit: March 23, 2019, 07:03:16 am by Blizzard
Chaos Project Debug System
Authors: Blizzard
Version: 1.1
Type: Heavy Debug Utility
Key Term: Game Utility



Introduction

This script will allow you to use an enhanced debugging menu with many useful options that even works in the battle without interrupting the battle and resetting the Scene_Battle.

This work is licensed under BSD License 2.0:
Quote
Copyright (c) Boris "Blizzard" Mikić
All rights reserved.

Redistribution and use in source and binary forms, with or without
modification, are permitted provided that the following conditions are met:

1.  Redistributions of source code must retain the above copyright notice,
    this list of conditions and the following disclaimer.

2.  Redistributions in binary form must reproduce the above copyright notice,
    this list of conditions and the following disclaimer in the documentation
    and/or other materials provided with the distribution.

3.  Neither the name of the copyright holder nor the names of its contributors
    may be used to endorse or promote products derived from this software
    without specific prior written permission.

THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT,
INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
POSSIBILITY OF SUCH DAMAGE.


You may use this script for both non-commercial and commercial products without limitations as long as you fulfill the conditions presented by the above license. The "complete" way to give credit is to include the license somewhere in your product (e.g. in the credits screen), but a "simple" way is also acceptable. The "simple" way to give credit is as follows:
Quote
Chaos Project Debug System licensed under BSD License 2.0, Copyright (c) Boris "Blizzard" Mikić


Alternatively, if your font doesn't support diacritic characters, you may use this variant:
Quote
Chaos Project Debug System licensed under BSD License 2.0, Copyright (c) Boris "Blizzard" Mikic


In general other similar variants are allowed as long as it is clear who the creator is (e.g. "Chaos Project Debug System created by Blizzard" is acceptable). But if possible, prefer to use one of the two variants listed above.

If you fail to give credit and/or claim that this work was created by you, this may result in legal action and/or payment of damages even though this work is free of charge to use normally.



Features


  • new options in DEBUG menu (press F9 to open the DEBUG menu):
               - Manage Switches
               - Manage Variables
               - Manage Party
               - Manage System
               - Manage Actors
               - Manage Battle
               - Teleport
               - Easy Party Switcher
               - Save
               - Load
               - Return to DEBUG ROOM
               - Exit
  • can be called from the map and from battle
  • returns to the scene from where it was called
  • supports "Easy Party Switcher" v2.1b and higher as enhancement

v1.0b

  • fixed glitch where skills would conflict with states
  • fixed glitch where "Load" would be always displayed grayed out
  • now beta

v1.02b

  • fixed glitch where manipulation of battle outcome wouldn't work

v1.06b

  • fixed glitch where Load screen would return to title instead of map
  • fixed glitch where the in_battle flag wouldn't be reseted if the battle scene was aborted via debugger
  • works now more convenient when calling other scenes
  • improved coding

v1.1

  • added new license
  • added usage and crediting instructions




Screenshots

Spoiler: ShowHide



Demo

Chaos Project Debug System


Script

Just make a new script above main and paste this code into it.
Script Download


Instructions

Inside the script in the first comment.


Compatibility

99% compatible with SDK v1.x. 90% compatible with SDK v2.x. Can cause incompatibility issues with following systems:

  • exotic CBS-es
  • exotic Skill Systems
  • exotic Weapon Systems
  • exotic Armor Systems
  • exotic Item Systems
  • exotic Party Changers

This script is being used by "Lexima Legends IV - Chaos Project" and no incompatiblity issues are known with any of the large number of custom systems and scripts this game has built in.


Credits and Thanks


  • Boris "Blizzard" Mikić



Author's Notes

It is not recommended to use the option "PREVENT_CRASH" as real bugs could be covered up.

If you find any bugs, please report them here:
http://forum.chaos-project.com

That's it! N-Joy! =D
Check out Daygames and our games:

King of Booze 2      King of Booze: Never Ever
Drinking Game for Android      Never have I ever for Android
Drinking Game for iOS      Never have I ever for iOS


Quote from: winkioI do not speak to bricks, either as individuals or in wall form.

Quote from: Barney StinsonWhen I get sad, I stop being sad and be awesome instead. True story.

Blizzard

Nobody likes my debugging system. ._.
Check out Daygames and our games:

King of Booze 2      King of Booze: Never Ever
Drinking Game for Android      Never have I ever for Android
Drinking Game for iOS      Never have I ever for iOS


Quote from: winkioI do not speak to bricks, either as individuals or in wall form.

Quote from: Barney StinsonWhen I get sad, I stop being sad and be awesome instead. True story.

Juan

I like the debug system. Its very helpful.
Dropbox Who need luck when you can make your own.
3ds Friend code: ShowHide
 4468 1422  6617

Mightylink

didnt even see it till now, did you just post it, cause im ganna get it.

i use the games debug a lot, especially when i create new variables thats sappose to be used before my current save file, this will be especially useful when I get deeper into my game and cant afford to keep starting a new file every time i make a change.

yours looks awesome

Blizzard

I've posted this nine and a half months ago. ._. I really need to make that part of the homepage which gives a complete index on the scripts database.
Check out Daygames and our games:

King of Booze 2      King of Booze: Never Ever
Drinking Game for Android      Never have I ever for Android
Drinking Game for iOS      Never have I ever for iOS


Quote from: winkioI do not speak to bricks, either as individuals or in wall form.

Quote from: Barney StinsonWhen I get sad, I stop being sad and be awesome instead. True story.

Mightylink


legacyblade

Dude, I love this thing. I think more people should use this, because it makes betatesting SOOOO much easier. BTW, you may want to make a blizzABS compatibility patch (changing the variables with blizzABS controls is heck). I know just about any n00b scripter could do that, but it'd make it easier for everyone.

Fantasist

QuoteI've posted this nine and a half months ago. ._. I really need to make that part of the homepage which gives a complete index on the scripts database.

That's cause it's so perfect it doesn't need any more changes. I made this default in my scripts. Though, I should've posted here.

Anyway, here are some things I've tried but never got around doing:

1. Debug Party Switcher, a party switcher especially for debugging purposes. It need not have special features, just a plain old party switcher. The EPS can still be used if anyone wants to.
2. Easier "Manage Actors": Common things like HP and SP should be easier to access.
3. Easier "Manage Battle": directly determine outcome without an other sub-menu. The sub-menu can be used for enemy manipulation.
4. Custom commands for the main debug menu, like adding options to the DMS. That way, I can add my own functions and stuff which I use frequently.

5. Console addon for the debugger. I don't want to use other input modules, so if you can make a text input system using your inout module, it would be awesome. Aleworks is pretty good, but I somehow don't like it.
Do you like ambient/electronic music? Then you should promote a talented artist! Help out here. (I'm serious. Just listen to his work at least!)


The best of freeware reviews: Gizmo's Freeware Reviews




Blizzard

I agree with 4 and 5. 3 is rather a bad idea since it would slightly complicate things. I need another command in the main menu and I need to blend it out in case when the player is not in battle. 2 is a valid point but I don't think it will help much if I separate semantically connected data. >.< 1 is meh. I made it work with EPS but that doesn't mean it can't use another party switcher by editing the scene call and the restriction when EPS is not installed. Even tough I like 5, it would complicate things because of keyboard language layout. -_-

Quote from: legacyblade on October 19, 2008, 11:58:53 pm
Dude, I love this thing. I think more people should use this, because it makes betatesting SOOOO much easier. BTW, you may want to make a blizzABS compatibility patch (changing the variables with blizzABS controls is heck). I know just about any n00b scripter could do that, but it'd make it easier for everyone.


I just haven't come around to make it yet.
Check out Daygames and our games:

King of Booze 2      King of Booze: Never Ever
Drinking Game for Android      Never have I ever for Android
Drinking Game for iOS      Never have I ever for iOS


Quote from: winkioI do not speak to bricks, either as individuals or in wall form.

Quote from: Barney StinsonWhen I get sad, I stop being sad and be awesome instead. True story.

Fantasist

Quote1. Debug Party Switcher, a party switcher especially for debugging purposes.
2. Easier "Manage Actors": Common things like HP and SP should be easier to access.
3. Easier "Manage Battle": directly determine outcome without an other sub-menu. The sub-menu can be used for enemy manipulation.
4. Custom commands for the main debug menu, like adding options to the DMS. That way, I can add my own functions and stuff which I use frequently.
5. Console addon for the debugger. I don't want to use other input modules, so if you can make a text input system using your inout module, it would be awesome. Aleworks is pretty good, but I somehow don't like it.


1. Hehe, I know. I tried making it, but stopped halfway.
2, 3. If 4 is implemented, I can make these :)
5. Oh well, I'll use aleworks then. I actually made a functional one. Gotta dig it out.
Do you like ambient/electronic music? Then you should promote a talented artist! Help out here. (I'm serious. Just listen to his work at least!)


The best of freeware reviews: Gizmo's Freeware Reviews




Blizzard

I think that 4 could imply 5 as plugin. o_o
Check out Daygames and our games:

King of Booze 2      King of Booze: Never Ever
Drinking Game for Android      Never have I ever for Android
Drinking Game for iOS      Never have I ever for iOS


Quote from: winkioI do not speak to bricks, either as individuals or in wall form.

Quote from: Barney StinsonWhen I get sad, I stop being sad and be awesome instead. True story.

legacyblade

I agree with the console thing. The ability to call script calls with the debugger would be awesome!

shdwlink1993

As I've mentioned earlier, I still think that allowing you to change self-switches would be very very nice.
Stuff I've made:




"Never think you're perfect or else you'll stop improving yourself."

"Some people say the glass is half full... some half empty... I just wanna know who's been drinking my beer."

Punn

Suggestion, when your out in the field... why not make a instant battle where it access the TROOP and if there's a troop, you can choose in engage in battle instantly.. it would be very help feature...

Blizzard

Those changes in RMXP's system, not related to debugging.
Check out Daygames and our games:

King of Booze 2      King of Booze: Never Ever
Drinking Game for Android      Never have I ever for Android
Drinking Game for iOS      Never have I ever for iOS


Quote from: winkioI do not speak to bricks, either as individuals or in wall form.

Quote from: Barney StinsonWhen I get sad, I stop being sad and be awesome instead. True story.

Punn


Blizzard

My bad, I misunderstood you. Yes, that's very possible. I can add that in a future version.
Check out Daygames and our games:

King of Booze 2      King of Booze: Never Ever
Drinking Game for Android      Never have I ever for Android
Drinking Game for iOS      Never have I ever for iOS


Quote from: winkioI do not speak to bricks, either as individuals or in wall form.

Quote from: Barney StinsonWhen I get sad, I stop being sad and be awesome instead. True story.

Xuroth

So I presume this thing is dying as this topic is so old...  I just stumbled across it digging through the script archive for a new project. I think a console system would be awesome.

Blizzard

A console system requires custom input and in case of a syntax error, the game would crash. It's not possible to prevent a crash on syntax error in eval(). :/
Check out Daygames and our games:

King of Booze 2      King of Booze: Never Ever
Drinking Game for Android      Never have I ever for Android
Drinking Game for iOS      Never have I ever for iOS


Quote from: winkioI do not speak to bricks, either as individuals or in wall form.

Quote from: Barney StinsonWhen I get sad, I stop being sad and be awesome instead. True story.

9VoltWiseMan

September 17, 2009, 08:37:48 pm #19 Last Edit: September 17, 2009, 08:42:42 pm by 9VoltWiseMan
Yay! No more events to set stuff up everywhere!

This makes me happy. *Levels up*
The Beta Demo of Curse's Flaw will be here.. Eventually.

Blizzard

I take this back:

Quote from: Blizzard on July 02, 2009, 10:52:52 am
It's not possible to prevent a crash on syntax error in eval(). :/


I have that implemented since RMX-OS 0.9 after all. ;>_>
You know, now that I actually have a console system implemented into the chat system, I might make a console separately when I find some time. :D
Check out Daygames and our games:

King of Booze 2      King of Booze: Never Ever
Drinking Game for Android      Never have I ever for Android
Drinking Game for iOS      Never have I ever for iOS


Quote from: winkioI do not speak to bricks, either as individuals or in wall form.

Quote from: Barney StinsonWhen I get sad, I stop being sad and be awesome instead. True story.

legacyblade

That would be amazing, and make testing so much easier.