Power Wop: Easily make your own wops! [BETA]

Help Topics, Bug Reports, Feature Requests, etc.
Post Reply
User avatar
MyNameIsKooky
Rainbow Spirit Master
Posts: 9711
Joined: Mon Dec 01, 2008 10:18 pm

Power Wop: Easily make your own wops! [BETA]

Post by MyNameIsKooky » Thu Mar 13, 2014 2:18 am

Power Wop is a program I wrote that easily edits wop files. I don't mean to be too egotistical, but I think it's great, especially when compared to editing wops manually (i.e. via Hex Editor). Here's why...

1. You can edit wops more quickly and more efficiently.
2. It's much easier to see what you're doing.
3. No need to learn how to edit wops manually.

Now that you can make your own wops, the Wop Request topic is now obsolete! There's no longer any need to wait for other people to make your wops for you! Plus, you'll be able to keep your insane wops a secret until you release your adventure! :D

Image


Download link for Power Wop (beta version, updated for WA3E): https://www.dropbox.com/s/ca6dlmfq3dgpe ... opBeta.zip

IMPORTANT: This is an early version of Power Wop. As such, it does not yet interpret certain wop attributes as floating point values. Due to this, some decimal-based settings like XScale, YAdjust, and ScaleAdjust may look incorrect in Power Wop. However, they will still be correct in WAE assuming they aren't edited incorrectly in Power Wop. All other settings appear as they should, though!



-=-=- IMPORTANT STUFF ABOUT WOPS IN GENERAL -=-=-

As you may know, the files that the Wonderland Adventures Editor (i.e. WAE) reads object data from are the ".wop" files, found in the "Data\Editor\ObjectPresets" folder. When a wop file (sometimes just called a "wop") is loaded into the WAE, many things are determined. When an object is selected for placement, its wop determines the default values for each setting of the object. Some settings include TextureName, XScale, and Data0. The wop also determines which settings are editable by adding "adjusters" which an adventure designer can click to change various values of the wop. Sadly, not every setting in Wonderland Adventures has an adjuster equivalent in the WAE, and most of the time, wops lack certain adjusters. This is where wop editing comes in.

People edit wops for three reasons...

1. To add more adjusters to the wop for more flexibility in the WAE.
2. To change the default values in the wop to extraneous ones: for example, setting the default color of a GloveCharger to 8, causing it to be a rainbow magic charger in the WAE by default.
3. To change the model of an object. This technique is most often referred to as "modelswapping". It often creates very amusing and unusual results in-game. But some objects, like Chompers and Stinker NPCs, cannot be modelswapped, otherwise they cause errors in-game.

Data is interpreted from wops in three different ways...

1. As a signed integer.
2. As a floating point (i.e. a number with a decimal point). In the WAE, decimal-based values use the IEEE-754 single precision floating-point format.
3. As a string (i.e. letters and numbers).

Four bytes in the wop file are allocated to each setting (except for strings, which may need more). As such, there is a limit to the maximum value of some settings, but generally you shouldn't be very concerned.

Each wop has two values that determine how its object behaves in-game. These two values are Type and SubType. The combination of Type and SubType are referred to as an object's logic.

-=-=- HOW TO USE POWER WOP -=-=-

Power Wop can edit any aspect of any wop file. The program itself may look daunting at first, but it's relatively simple to handle...

- Click on the black text fields to edit the text inside.
- Click on the red/green checkboxs to toggle whether they're checked or unchecked.
- The blue squares with text inside are buttons which you can click to make something happen.

Considering that pretty much all users of this program will be adventure designers, you should be pretty familiar with most of the settings for objects.

Here's what you need to know to be able to use Power Wop...

- The text fields determine the default values for each setting.
- The checkboxes to the right of each text field determine whether to include the setting in the wop as an adjuster. Careful: Having more than 27 adjusters enabled will cause errors in the WAE!
- Click on the "Import wop file" button to copy data from an existing wop file into Power Wop.
- Click on the "Export wop file" button to export the data from Power Wop into a wop file that the WAE can use. Note that this process takes about ten seconds or so and causes the program to freeze until it finishes. There's not much I can do about that, so I apologize.
- Click on the "Enable common adjusters" button to enable the adjusters most often desired in wops.
- Click on the "Disable all adjusters" button to disable all adjusters (duh).
- Click on the "Unknown settings" button to edit the settings that have unknown functions. Experiment with these a bit if you wish. You just might discover something!

Remember that modelswaps on certain object logics cause errors in-game.
Last edited by MyNameIsKooky on Wed Apr 23, 2014 6:05 pm, edited 5 times in total.
User avatar
StinkerSquad01
Rainbow AllStar
Posts: 4249
Joined: Mon Aug 09, 2010 3:39 am

Post by StinkerSquad01 » Thu Mar 13, 2014 2:20 am

Oh good, a beta! *slurps tongue in creepy manner*
User avatar
Wonderman109
Rainbow MegaStar
Posts: 3530
Joined: Thu Jun 28, 2012 11:25 pm

Post by Wonderman109 » Thu Mar 13, 2014 2:49 am

Your hard work has been appreciated, (without ego. :P)

EDIT: Will you also update your Special Tiles pack(s)?
User avatar
Jutomi
Rainbow AllStar
Posts: 4368
Joined: Tue Oct 15, 2013 8:42 pm

Post by Jutomi » Thu Mar 13, 2014 3:47 am

Wipeee!!!

Yes! Time to go and mess my game up ten fold! :mrgreen:
Your only little stinker that's absolutely NOT a z-bot by this name,
Jutomi~ :mrgreen:

Also, if you want to see my level list, here it is! :D
(Also: List of Hubs, WA Manual)
Oh, and my YT wonderland channel. Forgot about that.
User avatar
dig 222
Rainbow Star
Posts: 1279
Joined: Sat Jan 15, 2011 11:44 am

Post by dig 222 » Thu Mar 13, 2014 7:59 am

This will be helpful for WA5. :twisted:
ZAPBOT LURKERS INBOUND
User avatar
yot yot5
Rainbow SuperStar
Posts: 2294
Joined: Sun May 22, 2011 1:24 pm

Post by yot yot5 » Thu Mar 13, 2014 11:44 am

WOO, THANK YOU!!!
User avatar
Jutomi
Rainbow AllStar
Posts: 4368
Joined: Tue Oct 15, 2013 8:42 pm

Post by Jutomi » Fri Mar 14, 2014 3:36 am

Kooky, sorry for forgetting to mention this, but I thank you so much for this!

I adore this thing! :mrgreen:
Your only little stinker that's absolutely NOT a z-bot by this name,
Jutomi~ :mrgreen:

Also, if you want to see my level list, here it is! :D
(Also: List of Hubs, WA Manual)
Oh, and my YT wonderland channel. Forgot about that.
User avatar
HumanGamer
Rainbow Wonderlander
Posts: 199
Joined: Fri Apr 16, 2010 2:23 pm

Post by HumanGamer » Fri Mar 14, 2014 3:17 pm

I just figured out how to use this and I LOVE it!

Thanks for making it! :)
WA3 Editor Tools
WOP Research
WA Map Recreation

I was previously known as cooldudepoke.
User avatar
MyNameIsKooky
Rainbow Spirit Master
Posts: 9711
Joined: Mon Dec 01, 2008 10:18 pm

Post by MyNameIsKooky » Fri Mar 14, 2014 4:44 pm

Thanks everyone! I'm glad you're all liking it! :D

By the way: if you ever feel like it, I recommend experimenting with the unknown settings. If you find something, I'll be sure to add it to the "Known settings" page in future versions of Power Wop! ;)
User avatar
Jutomi
Rainbow AllStar
Posts: 4368
Joined: Tue Oct 15, 2013 8:42 pm

Post by Jutomi » Fri Mar 14, 2014 5:11 pm

I'm too scared to; I broke my rainbow bubbles model just by making a duplicate with weird varients like texture and id so I can have a command that summons chocola...

:mrgreen:
Your only little stinker that's absolutely NOT a z-bot by this name,
Jutomi~ :mrgreen:

Also, if you want to see my level list, here it is! :D
(Also: List of Hubs, WA Manual)
Oh, and my YT wonderland channel. Forgot about that.
User avatar
Pawelec
Rainbow Master
Posts: 690
Joined: Tue Jul 15, 2008 8:37 am

Post by Pawelec » Tue Mar 18, 2014 7:46 pm

I have an idea: would it be possible to add a 'Enable Favourite Adjusters' option? This would require enabling user-controlled list of favourite adjusters somehow.

I ask this because I rarely enable ActivationType and ActivationSpeed, but I enable Type almost always and this feature would save me a lot of time.

Also, an ability to select adjuster's order would be very nice, as I find scrolling down every time I want to set the colour of my gate quite annoying...

BTW, have I written anywhere that this tool is ingenious? :lol:
It would be absolutely perfect if Scale values appeared in a correct way, but as of now I have no need to set them WOP-side - the Editor is enough.
"Let us return to the past; it will be progress."
by Giuseppe Verdi
User avatar
Wonderman109
Rainbow MegaStar
Posts: 3530
Joined: Thu Jun 28, 2012 11:25 pm

Post by Wonderman109 » Tue Mar 18, 2014 9:05 pm

I found a problem: My Superadjustable Textured Troll wop's ID adjustment becomes a second Greeting adjustment after a wlv is saved or something, meaning you have to change it right when placed.
You do not have the required permissions to view the files attached to this post.
User avatar
jdl
Rainbow SuperStar
Posts: 2887
Joined: Fri Jun 06, 2008 8:37 pm
Location: West Virginia, USA
Contact:

Post by jdl » Thu Mar 20, 2014 10:25 pm

The model !SkyMachineMap is not in the list, and there's also an object type 166 (not sure what it does, it's used for the sky machine map).
ImageImage
TheCracksOverhead#9565 | Oops, uh oh.
User avatar
MyNameIsKooky
Rainbow Spirit Master
Posts: 9711
Joined: Mon Dec 01, 2008 10:18 pm

Post by MyNameIsKooky » Thu Mar 20, 2014 10:31 pm

Pawelec wrote:I have an idea: would it be possible to add a 'Enable Favourite Adjusters' option? This would require enabling user-controlled list of favourite adjusters somehow.
I like that idea. I'll keep that in mind when making the next version. :)
Wonderman109 wrote:I found a problem: My Superadjustable Textured Troll wop's ID adjustment becomes a second Greeting adjustment after a wlv is saved or something, meaning you have to change it right when placed.
Sounds like a bug with the editor itself.
jdl wrote:The model !SkyMachineMap is not in the list, and there's also an object type 166 (not sure what it does, it's used for the sky machine map).
Oh, I completely forgot about those, thanks for pointing that out. :)
User avatar
jdl
Rainbow SuperStar
Posts: 2887
Joined: Fri Jun 06, 2008 8:37 pm
Location: West Virginia, USA
Contact:

Post by jdl » Thu Mar 20, 2014 11:16 pm

Whoops, I forgot to add that there's also !MagicMirror as well. :)
ImageImage
TheCracksOverhead#9565 | Oops, uh oh.
User avatar
MyNameIsKooky
Rainbow Spirit Master
Posts: 9711
Joined: Mon Dec 01, 2008 10:18 pm

Post by MyNameIsKooky » Thu Mar 20, 2014 11:17 pm

Thanks. :)
User avatar
Pawelec
Rainbow Master
Posts: 690
Joined: Tue Jul 15, 2008 8:37 am

Re: Power Wop: Easily make your own wops! [BETA]

Post by Pawelec » Sat Mar 22, 2014 3:52 pm

MyNameIsKooky wrote:Data is interpreted from wops in three different ways...
(...)
2. As a floating point (i.e. a number with a decimal point). In the WAE, decimal-based values use the IEEE-754 single precision floating-point format.
Is there any way/tool to convert floats (eg. 0.8, 3.45) to those strange IEEE-754 integer addresses? I need to set some values inside my WOPs so I don't forget to do that every time I place my modelswapped object. To be exact, I need to get adresses of 0.4 and 0.8 values.

EDIT: OK, I found a workaround worth sharing: I made a 1x1 wlv with my object with all values set to what I needed and Hex-extracted a WOP from it. However, WOPs made this way need to have the WAE Offset removed in Power Wop, as it is always added in this method (I don't know why the Editor does that).
"Let us return to the past; it will be progress."
by Giuseppe Verdi
User avatar
MyNameIsKooky
Rainbow Spirit Master
Posts: 9711
Joined: Mon Dec 01, 2008 10:18 pm

Re: Power Wop: Easily make your own wops! [BETA]

Post by MyNameIsKooky » Sun Mar 23, 2014 3:08 am

Pawelec wrote:
MyNameIsKooky wrote:Data is interpreted from wops in three different ways...
(...)
2. As a floating point (i.e. a number with a decimal point). In the WAE, decimal-based values use the IEEE-754 single precision floating-point format.
Is there any way/tool to convert floats (eg. 0.8, 3.45) to those strange IEEE-754 integer addresses? I need to set some values inside my WOPs so I don't forget to do that every time I place my modelswapped object. To be exact, I need to get adresses of 0.4 and 0.8 values.
These pages are IEEE-754 converters, so maybe they'll help you out:

http://www6.uniovi.es/~antonio/uned/iee ... E-754.html
http://www6.uniovi.es/~antonio/uned/iee ... hex32.html
User avatar
Pawelec
Rainbow Master
Posts: 690
Joined: Tue Jul 15, 2008 8:37 am

Re: Power Wop: Easily make your own wops! [BETA]

Post by Pawelec » Sun Mar 23, 2014 9:46 am

Thanks, that's what I needed. There's no field giving you correct value (eg. 1065353216 for 1.0f), but all you need to do is to copy the output of hexadcecimal field and convert it to decimal (eg. using Windows calculator).
"Let us return to the past; it will be progress."
by Giuseppe Verdi
User avatar
SearchForReality
Rainbow Wonderlander
Posts: 161
Joined: Thu Jun 05, 2014 3:00 am

Re: Power Wop: Easily make your own wops! [BETA]

Post by SearchForReality » Sat Jun 14, 2014 8:43 pm

MyNameIsKooky wrote:Careful: Having more than 27 adjusters enabled will cause errors in the WAE!
After downloading, I realize the cause of this is related to the editor's adjustment panel organization. Any object with more than 9 adjustments needs multiple panels, as a panel can fit only 9 adjustments. These panels are scrolled through by the 'More' button, as custom-level-makers all know. No object has more than 3 panels allowed to it in the coding, and 3 panels=maximum 27 adjustments. Having 28+ means some do not fit in the panels, most likely leading to AIOOBs and other errors. Why no more than 3 panels are in place is unknown though, considering there are 42 adjustments shown in PowerWop alone. (PowerWop=life, congratulations, MNIK) (AND THIS IS ALSO BY COINCIDENCE MY 42ND POST, WITH A POSTING AVERAGE OF 4.20 FOR ME RIGHT NOW)
PMs and emails closed until further notice.
User avatar
MyNameIsKooky
Rainbow Spirit Master
Posts: 9711
Joined: Mon Dec 01, 2008 10:18 pm

Post by MyNameIsKooky » Sat Jun 14, 2014 9:44 pm

Trying to access a fourth page of adjusters causes AIOOB. MS never bothered adding code for a fourth page simply because he never needed that many adjusters on one object.
User avatar
Jutomi
Rainbow AllStar
Posts: 4368
Joined: Tue Oct 15, 2013 8:42 pm

Decision Making

Post by Jutomi » Thu Jun 18, 2015 9:31 pm

I decided to bump this,

and albeit I'm sorry that I don't really have anything important to add to it,
I have to say that this is too invaluable to be in the second page of editor info. :lol:

Seriously, this has been one of my favorite things for the editor. :P

Which reminds me; Caton could probably find this in handy. :?
Your only little stinker that's absolutely NOT a z-bot by this name,
Jutomi~ :mrgreen:

Also, if you want to see my level list, here it is! :D
(Also: List of Hubs, WA Manual)
Oh, and my YT wonderland channel. Forgot about that.
User avatar
Pawelec
Rainbow Master
Posts: 690
Joined: Tue Jul 15, 2008 8:37 am

Post by Pawelec » Sun Feb 07, 2016 10:28 am

First of all: this topic should be sticky.

MNIK, as I've got the official code names for many unknown parameters: how about adding them in PowerWOP to avoid messing up the parameter numbers while we're testing them?
"Let us return to the past; it will be progress."
by Giuseppe Verdi
Caton
Rainbow Master
Posts: 674
Joined: Sat Sep 27, 2014 7:18 pm

Post by Caton » Sun Feb 07, 2016 6:50 pm

Good program but, this program is slow should this rewritten in C++ or blitz3d?
User avatar
Pawelec
Rainbow Master
Posts: 690
Joined: Tue Jul 15, 2008 8:37 am

Post by Pawelec » Sun Feb 07, 2016 11:09 pm

Caton wrote:Good program but, this program is slow should this rewritten in C++ or blitz3d?
For me speed is not a problem, I have some stability issues and it bothers me more. Apparently W10 doesn't seem to like GameMaker apps (tested with other programs and users of a different forum).
"Let us return to the past; it will be progress."
by Giuseppe Verdi
Post Reply