PDA

View Full Version : EQ Editor 1.20


cybernine186
09-03-2008, 10:22 PM
EQ Profile Editor 1.20
-----------------------------------------------------
This program was written and designed for the purpose of editing the user profile
and account for the EQ Emulator Server Database.


I need feedback if anyone would so kindly take the time and let me know what they think about the program or any bugs you might have found..... Either post it here or send me an email at cybernine186@gmail.com

Also the Telnet functions are sorta... untested so please let me know how it goes. If anyone has a server that they can give me some admin rights to for testing I would be very thankful.


Changes in 1.20
-----------------------------------------------------
1. Added the ability to view, train and edit raw AA profile.
2. Made some modifications to the coin_wipe.php script (A little bit better performance)
3. Added the GM Variable on the character page. (Allows the character to be flaged for GM Status)
4. Added the Character Title and Suffix to the character page.
5. Fixed some small issues with the item viewer on the inventory page.
6. Added the ability to do character backup and restore. (This uses the same method as the Emu Server)
7. Added the ability to delete characters
8. Changed the way that stats and features are changed, they are now drop down menus with a defined range
of numbers instead of inputting a number. This makes sure that a correct value is always input.
9. Added a better login system, the login system now uses the account table username and password with
a minimum status to login. Default is set to 50, this can be changed in the configuration.php file.
10. Added the ability to do telnet functions inside the script, you must have telnet turned on the server.
The login username and password for the telnet comes from the login page.
Telnet must have a account status of 50
or greater, this is hard coded into the EmuServer program.
11. Changed the theme/colors of the script.
12. Added some LDON settings on the Other page.
13. Changed the Account Stats from a drop down menu to a text box. This allows for custom account levels.
14. Added Icons to the Item View for Inventory.
15. Added the ability to list, view and edit a players corpse, Including Coin and Items.
16. Added ability to view and delete petitions.
17. Changed the way that the Languages & Skills updates. Just an improvement on processing power & SQL Resources.
18. Added the ability to edit and add character factions.
19. Added the ability to remove and add guilds from characters.
20. Search for Guilds

Please read the readme.txt for further information

Download EQ Editor 1.20 (http://www.filefactory.com/file/8fd488/n/EQEditor_1_20_zip)

Sorry for the file sharing for download but its all I got.

cybernine186
09-03-2008, 10:58 PM
OH something I forgot to mention was once you edit a corpse you might have to reboot the zone that the corpse is in or the changes might not take effect.

I don't really know because I haven't tested that out, if anyone is willing to give me admin rights to a small server for testing I would appreciate it.

cavedude
09-04-2008, 01:13 AM
This tool is simply terrific. Thank you!

cybernine186
09-09-2008, 10:38 PM
Has anyone tried to use this new tool yet? I haven't seen any feedback or questions related to the new release of the EQ Editor tool.

nicholasjohn
09-10-2008, 10:29 AM
I think you did an amazing job on this, two thumbs up :D

cavedude
09-12-2008, 08:27 PM
I finally got a chance to really kick the tires of this program. The issues I have found are:

- I could not figure out how to restore a toon from a backup. I click on restore backup next to the toon on the account screen. I see the list of backups, but where it looks like the restore button should be (to the left of the delete button) there is nothing there. When I refresh the page, for a split second I see an icon pop up but then it disappears.

- The AA screen doesn't work. Most of the values are 0s, even though the player does have points and points spent. Sometimes values do show up, but they are not correct. I didn't try editing as I didn't want to mess up toons. If you need me to, I can test further on a mule toon.

- Minor problem, I get a warning: "Warning: Missing argument 5 for f_menu() in /home/httpd/html/eqeditor/includes/lib/functions.php on line 288" right above the insert faction box. However, it does seem to work. I see all of the factions, and I am able to insert new ones.

I've tried the vast majority of other options, and they all work great! Outstanding work, this has saved me a ton of time. I have to admit, I was surprised when things like spell scribing or corpse manipulation actually worked, it's was a too good to be true feeling!

IMO, the only thing this is missing is bind point manipulation, the ability to view/edit quest_globals and zone flags, and now that telnet support is in, the ability to feed it your own commands and receive the output. Other than that this program is pure perfection!

cybernine186
09-15-2008, 12:52 AM
I finally got a chance to really kick the tires of this program. The issues I have found are:

- I could not figure out how to restore a toon from a backup. I click on restore backup next to the toon on the account screen. I see the list of backups, but where it looks like the restore button should be (to the left of the delete button) there is nothing there. When I refresh the page, for a split second I see an icon pop up but then it disappears.

- The AA screen doesn't work. Most of the values are 0s, even though the player does have points and points spent. Sometimes values do show up, but they are not correct. I didn't try editing as I didn't want to mess up toons. If you need me to, I can test further on a mule toon.

- Minor problem, I get a warning: "Warning: Missing argument 5 for f_menu() in /home/httpd/html/eqeditor/includes/lib/functions.php on line 288" right above the insert faction box. However, it does seem to work. I see all of the factions, and I am able to insert new ones.

I've tried the vast majority of other options, and they all work great! Outstanding work, this has saved me a ton of time. I have to admit, I was surprised when things like spell scribing or corpse manipulation actually worked, it's was a too good to be true feeling!

IMO, the only thing this is missing is bind point manipulation, the ability to view/edit quest_globals and zone flags, and now that telnet support is in, the ability to feed it your own commands and receive the output. Other than that this program is pure perfection!


1. I will check this out, however it uses javascript. Check to see if you allowed javascript to be run on that page.

2. Very ODD.... Use the advance editing and see if it displays right. It should be AA ID and AA Value listed. What version source code are you using? Can you send me a copy of a couple of your characters back files for testing?

3. It will work just fine with that error message, I will fix the message though. The 5th field is optional not required.

4. Will work on adding those features, they shouldn't take long to add in the system.


Thank you for testing this out.... Can you confirm that the Telnet code works correctly?

lockjaws
09-17-2008, 04:14 PM
Looks like a Fantastic tool can't wait to try this out but, it seems the hosting site is always busy would anyone happen to have an addition download link for this?

spoon
09-17-2008, 04:47 PM
Looks like a Fantastic tool can't wait to try this out but, it seems the hosting site is always busy would anyone happen to have an addition download link for this?

Try http://drop.io/eqeditor1_20

lockjaws
09-17-2008, 05:17 PM
Try http://drop.io/eqeditor1_20

Brilliant, Thanks Spoon, much appreciated

cybernine186
09-17-2008, 05:56 PM
I need some characters with AA's from a database for testing. I think I may have the pointer wrong that it is looking in the profile for the AA structure.

Can you send me a copy of some characters with AA's

Cybernine186@gmail.com

spoon
09-17-2008, 10:37 PM
Sounds like you are close to finish debugging the AAs but if not one thing I was noticing with 1.20 was the AAs listed in default mode did not match the AAs available for the class being edited (beastlord AAs for a ranger). Adding unused AAs seemed to work. I did not test any of this very well though.

--Spoon

cybernine186
09-18-2008, 01:53 AM
If cavedood is having problems with the AA's and not viewing right then that means it will not read the correct aa's or write them.

This is written for the latest version of the source. If you are using an old packet structure then this entire program might not work, its untested.

Works with titanium clients other than that..... I dont know.

AndMetal
09-18-2008, 03:04 AM
I think I may have the pointer wrong that it is looking in the profile for the AA structure.

I definitely can't hold this against you, even though it's (buried, hardcore style) in the Wiki (http://www.eqemulator.net/wiki/wikka.php?wakka=EQEmuDBSchemacharacterprofile) (I put it there for this exact reason :D), but this should answer this issue:

aa_array

Even though the source says this starts at 0432, it actually starts at 0428 (item_tint: 0392 + 36).

struct AA_Array
{
int32 AA;
int32 value;
};


I think what ended up happening when I first read the AA info in my PHP tool (http://sourceforge.net/projects/customeqemu/) I started a while back was it had things a little backwards (indexes were the values, and they were off by 1 set I think).

Hope this helps.

AndMetal
09-18-2008, 04:34 AM
Looks like I was right:
aa.php

// Find the AA ID in the profile or select a new slot to train the AA
for($x = 1; $x <= 240; $x++){

// AA ID Value
$aa_id = asc2uint(substr($char->profile,$x*8+428,4));

// Find first open available slot in profile
if($aa_id == 0){
if(!isset($aa_open)){
$aa_open = $x;
}
}

// if train_id matches a previous AA then stop and save the slot #
if($_POST['train_id'] == $aa_id){
$aa_slot = $x;
$aa_value = asc2uint(substr($char->profile,$x*8+432,4));
break;
} elseif(($aa_id == 0) && ($aa_open < 1)) {
$aa_open = $x;
}
}

...

for ($x = 1; $x <= 240; $x++) {
$aa_array[asc2uint(substr($char_blob,$x*8+428,4))] = asc2uint(substr($char_blob,$x*8+432,4));
}


Should be able to fix this one of 2 ways: either change the for values to 0/239 instead of 1/240, or change the substring to ($x-1)*8+428/($x-1)*8+432. I personally (http://www.eqemulator.net/wiki/wikka.php?wakka=ConvertProfile) went the first route.

Should also be some more in aa_adv.php:

for ($x = 1; $x <= 240; $x++) {
$aa_array[$x] = array( 0 => asc2uint(substr($char_blob,$x*8+428,4)), 1 => asc2uint(substr($char_blob,$x*8+432,4)));
}


It also looks like the locations are defined in schema.sql, so that will be the semi-hard part:
UPDATE editor_values SET location = (location - 8) WHERE name LIKE 'aa_%'

One thing I'm not sure about with the above code, though, is that the server is really weird about how it reads and stores the AA values. The ID is basically the ID in the profile minus the value it is set to minus 1. I think it's mainly because the IDs sort-of start at 0, not 1 (which is mainly why I ended up starting from 0 instead of 1).

The part that writes the values looks right, but I'm not sure about how it pulls it later in the code. This is how I ended up reading it (is kinda old, so a little sloppy):
// AA_Array[240]
for ($x = 0; $x <= 239; $x++) {
$aa = asc2uint(substr($profileResult,$x*8+428,4));
$value = asc2uint(substr($profileResult,$x*8+432,4));
if ($aa != 0) {
$Profile["aa_array"][($aa-($value-1))] = $value;
};
unset($aa); // Probably not very efficient...
unset($value); // Same...
};
unset($aa);
unset($value);

Could probably do it a little better this way:

// AA_Array[240]
for ($x = 0; $x <= 239; $x++) {
$aa = asc2uint(substr($profileResult,$x*8+428,4));
if ($aa != 0) {
$value = asc2uint(substr($profileResult,$x*8+432,4)); // 1 call to constant > 2 calls to variables/functions
$Profile["aa_array"][($aa-($value-1))] = $value;
};
$aa = 0; // Otherwise, can cause some issues in the loop since it carries over
$value = 0; // Same
};
unset($aa); // Help free a little memory
unset($value); // Same


On a somewhat unrelated note, just as an added feature, you may want to include the AA description in somewhere (I didn't see it, unless I overlooked it):
SELECT text FROM editor_dbstr WHERE type = 4 AND id = $aa_value[0]
For reference, this is a query I used for viewing the AA info, including text loaded in a table "dbstr_us" (I tried to make a window as close to the client as I could):
SELECT a.skill_id, a.name, a.cost, a.max_level, a.spellid, (a.classes + a.berserker) AS classes, d.text FROM altadv_vars a, dbstr_us d WHERE a.skill_id=d.id1 AND d.id2='4' AND a.type='$_GET[type]' AND classes & '$ClassesBit[$_GET["class"]]' ORDER BY a.skill_id

Anyways, enough of my rambling, this should take care of the original issue.

cavedude
09-18-2008, 06:19 PM
Sorry I haven't responded, but with PEQ being down I'm crippled atm.

AndMetal
09-19-2008, 12:15 AM
I'm crippled atm.

Is that because the server is down, or someone took a baseball bat to your kneecaps? :D

cavedude
09-20-2008, 04:46 PM
In a way, both :P While I don't play on PEQ it being down has really started to get to me!

renoofturks1
09-22-2008, 12:32 AM
In a way, both :P While I don't play on PEQ it being down has really started to get to me!

Oh yea? Wait til you see all the stuff I have waiting for you to add to it =) You'll wish it was still down =) Amazing what one can accomplish when their are no raids to attend =(

cavedude
09-22-2008, 12:56 PM
Oh yea? Wait til you see all the stuff I have waiting for you to add to it =) You'll wish it was still down =) Amazing what one can accomplish when their are no raids to attend =(

I'll add it to my list! At this rate, even when the server comes back up the game server may be down for a while to ensure everything gets in!

cybernine186
10-02-2008, 05:49 PM
I have made a few updates to some bugs and a few minor upgrades.

The latest release is 1.27, I hope to have the AA's fixed with this release please try it out and let me know how it goes.

I have put this on Sourceforge.net website, you can find all the latest downloads located below.

https://sourceforge.net/projects/emueqeditor/

Also something on my list to do is add the ability to do server variables, npc spawn, loots, spellset, etc. and then tradeskills.
I want this to be a all-in-one package.

toasterdeath
02-25-2009, 12:22 PM
Hey I installed everything but I am having some issues logging in. It won't take anything I put in for login/password. I installed the EQ Editor 1.0 and it works just fine, but the new one does not.

I looked at some of the code but I can't really figure out what I need to do.

cybernine186
03-20-2009, 06:49 PM
Sorry I moved the script and everything to google. Try this URL instead http://code.google.com/p/ultraeqeditor/

This is the latest and greatest although the "Database" section is a work in progress because I am taking the PEQ Editor and rewriting it into my own updated version. You will have to use a SVN client to download it because I do not have a packaged version available on the site to download.

I would try using TortoiseSVN (http://tortoisesvn.tigris.org/) located here (http://tortoisesvn.tigris.org/).