EQEmulator Forums

EQEmulator Forums (https://www.eqemulator.org/forums/index.php)
-   Development::Tools (https://www.eqemulator.org/forums/forumdisplay.php?f=593)
-   -   Null Spell Editor (https://www.eqemulator.org/forums/showthread.php?t=31419)

GeorgeS 07-27-2010 09:41 PM

The file needs to be imported into the database first, then the editor will see the spells. I sent a pm regarding this.

GeorgeS

pfyon 09-18-2010 02:44 PM

The problem with that insert query is 'range' is a reserved word in mysql 5.something (is for me using 5.1.41 anyway). If you quote your column names with ` , you can specify the column name.

It's failing for me, not sure if it's due to that reason though. I tell it to do a full write to the database and it pauses for 10 seconds or so then appears to finish, but the table just gets truncated. No error messages.

Null 09-21-2010 01:39 PM

I don't remember what version of MySQL I am using at home, but so far it has not had an issue with the range field.

Typically it breaks when a field in the database gets renamed, I keep meaning to fix it so people don't need to wait for me to get around to fixing it every time this happens but I'm slammed at the moment time wise. If I could get blind inserts working this wouldn't be a problem, but I cant seem to get them to play nice.

I thought I added error checking for that insert (what version are you using?) but I might have missed one.

Either way, can you give me a dump of your database fields so I can check them against what I am targeting in code?

pfyon 09-21-2010 05:33 PM

Quote:

Originally Posted by Null (Post 192350)
I don't remember what version of MySQL I am using at home, but so far it has not had an issue with the range field.

Typically it breaks when a field in the database gets renamed, I keep meaning to fix it so people don't need to wait for me to get around to fixing it every time this happens but I'm slammed at the moment time wise. If I could get blind inserts working this wouldn't be a problem, but I cant seem to get them to play nice.

I thought I added error checking for that insert (what version are you using?) but I might have missed one.

Either way, can you give me a dump of your database fields so I can check them against what I am targeting in code?

I'm using 1.3, and it does have the error checking for that query, at least it tells you there's an error and doesn't just break.

Here's the table:

Code:

mysql> show columns in spells_new;
+----------------------+--------------+------+-----+------------+-------+
| Field                | Type        | Null | Key | Default    | Extra |
+----------------------+--------------+------+-----+------------+-------+
| id                  | int(11)      | NO  | PRI | 0          |      |
| name                | varchar(64)  | YES  |    | NULL      |      |
| player_1            | varchar(64)  | YES  |    | BLUE_TRAIL |      |
| teleport_zone        | varchar(64)  | YES  |    | NULL      |      |
| you_cast            | varchar(120) | YES  |    | NULL      |      |
| other_casts          | varchar(120) | YES  |    | NULL      |      |
| cast_on_you          | varchar(120) | YES  |    | NULL      |      |
| cast_on_other        | varchar(120) | YES  |    | NULL      |      |
| spell_fades          | varchar(120) | YES  |    | NULL      |      |
| range                | int(11)      | NO  |    | 100        |      |
| aoerange            | int(11)      | NO  |    | 0          |      |
| pushback            | int(11)      | NO  |    | 0          |      |
| pushup              | int(11)      | NO  |    | 0          |      |
| cast_time            | int(11)      | NO  |    | 0          |      |
| recovery_time        | int(11)      | NO  |    | 0          |      |
| recast_time          | int(11)      | NO  |    | 0          |      |
| buffdurationformula  | int(11)      | NO  |    | 7          |      |
| buffduration        | int(11)      | NO  |    | 65        |      |
| AEDuration          | int(11)      | NO  |    | 0          |      |
| mana                | int(11)      | NO  |    | 0          |      |
| effect_base_value1  | int(11)      | NO  |    | 100        |      |
| effect_base_value2  | int(11)      | NO  |    | 0          |      |
| effect_base_value3  | int(11)      | NO  |    | 0          |      |
| effect_base_value4  | int(11)      | NO  |    | 0          |      |
| effect_base_value5  | int(11)      | NO  |    | 0          |      |
| effect_base_value6  | int(11)      | NO  |    | 0          |      |
| effect_base_value7  | int(11)      | NO  |    | 0          |      |
| effect_base_value8  | int(11)      | NO  |    | 0          |      |
| effect_base_value9  | int(11)      | NO  |    | 0          |      |
| effect_base_value10  | int(11)      | NO  |    | 0          |      |
| effect_base_value11  | int(11)      | NO  |    | 0          |      |
| effect_base_value12  | int(11)      | NO  |    | 0          |      |
| effect_limit_value1  | int(11)      | NO  |    | 0          |      |
| effect_limit_value2  | int(11)      | NO  |    | 0          |      |
| effect_limit_value3  | int(11)      | NO  |    | 0          |      |
| effect_limit_value4  | int(11)      | NO  |    | 0          |      |
| effect_limit_value5  | int(11)      | NO  |    | 0          |      |
| effect_limit_value6  | int(11)      | NO  |    | 0          |      |
| effect_limit_value7  | int(11)      | NO  |    | 0          |      |
| effect_limit_value8  | int(11)      | NO  |    | 0          |      |
| effect_limit_value9  | int(11)      | NO  |    | 0          |      |
| effect_limit_value10 | int(11)      | NO  |    | 0          |      |
| effect_limit_value11 | int(11)      | NO  |    | 0          |      |
| effect_limit_value12 | int(11)      | NO  |    | 0          |      |
| max1                | int(11)      | NO  |    | 0          |      |
| max2                | int(11)      | NO  |    | 0          |      |
| max3                | int(11)      | NO  |    | 0          |      |
| max4                | int(11)      | NO  |    | 0          |      |
| max5                | int(11)      | NO  |    | 0          |      |
| max6                | int(11)      | NO  |    | 0          |      |
| max7                | int(11)      | NO  |    | 0          |      |
| max8                | int(11)      | NO  |    | 0          |      |
| max9                | int(11)      | NO  |    | 0          |      |
| max10                | int(11)      | NO  |    | 0          |      |
| max11                | int(11)      | NO  |    | 0          |      |
| max12                | int(11)      | NO  |    | 0          |      |
| icon                | int(11)      | NO  |    | 0          |      |
| memicon              | int(11)      | NO  |    | 0          |      |
| components1          | int(11)      | NO  |    | -1        |      |
| components2          | int(11)      | NO  |    | -1        |      |
| components3          | int(11)      | NO  |    | -1        |      |
| components4          | int(11)      | NO  |    | -1        |      |
| component_counts1    | int(11)      | NO  |    | 1          |      |
| component_counts2    | int(11)      | NO  |    | 1          |      |
| component_counts3    | int(11)      | NO  |    | 1          |      |
| component_counts4    | int(11)      | NO  |    | 1          |      |
| NoexpendReagent1    | int(11)      | NO  |    | -1        |      |
| NoexpendReagent2    | int(11)      | NO  |    | -1        |      |
| NoexpendReagent3    | int(11)      | NO  |    | -1        |      |
| NoexpendReagent4    | int(11)      | NO  |    | -1        |      |
| formula1            | int(11)      | NO  |    | 100        |      |
| formula2            | int(11)      | NO  |    | 100        |      |
| formula3            | int(11)      | NO  |    | 100        |      |
| formula4            | int(11)      | NO  |    | 100        |      |
| formula5            | int(11)      | NO  |    | 100        |      |
| formula6            | int(11)      | NO  |    | 100        |      |
| formula7            | int(11)      | NO  |    | 100        |      |
| formula8            | int(11)      | NO  |    | 100        |      |
| formula9            | int(11)      | NO  |    | 100        |      |
| formula10            | int(11)      | NO  |    | 100        |      |
| formula11            | int(11)      | NO  |    | 100        |      |
| formula12            | int(11)      | NO  |    | 100        |      |
| LightType            | int(11)      | NO  |    | 0          |      |
| goodEffect          | int(11)      | NO  |    | 0          |      |
| Activated            | int(11)      | NO  |    | 0          |      |
| resisttype          | int(11)      | NO  |    | 0          |      |
| effectid1            | int(11)      | NO  |    | 254        |      |
| effectid2            | int(11)      | NO  |    | 254        |      |
| effectid3            | int(11)      | NO  |    | 254        |      |
| effectid4            | int(11)      | NO  |    | 254        |      |
| effectid5            | int(11)      | NO  |    | 254        |      |
| effectid6            | int(11)      | NO  |    | 254        |      |
| effectid7            | int(11)      | NO  |    | 254        |      |
| effectid8            | int(11)      | NO  |    | 254        |      |
| effectid9            | int(11)      | NO  |    | 254        |      |
| effectid10          | int(11)      | NO  |    | 254        |      |
| effectid11          | int(11)      | NO  |    | 254        |      |
| effectid12          | int(11)      | NO  |    | 254        |      |
| targettype          | int(11)      | NO  |    | 2          |      |
| basediff            | int(11)      | NO  |    | 0          |      |
| skill                | int(11)      | NO  |    | 98        |      |
| zonetype            | int(11)      | NO  |    | -1        |      |
| EnvironmentType      | int(11)      | NO  |    | 0          |      |
| TimeOfDay            | int(11)      | NO  |    | 0          |      |
| classes1            | int(11)      | NO  |    | 255        |      |
| classes2            | int(11)      | NO  |    | 255        |      |
| classes3            | int(11)      | NO  |    | 255        |      |
| classes4            | int(11)      | NO  |    | 255        |      |
| classes5            | int(11)      | NO  |    | 255        |      |
| classes6            | int(11)      | NO  |    | 255        |      |
| classes7            | int(11)      | NO  |    | 255        |      |
| classes8            | int(11)      | NO  |    | 255        |      |
| classes9            | int(11)      | NO  |    | 255        |      |
| classes10            | int(11)      | NO  |    | 255        |      |
| classes11            | int(11)      | NO  |    | 255        |      |
| classes12            | int(11)      | NO  |    | 255        |      |
| classes13            | int(11)      | NO  |    | 255        |      |
| classes14            | int(11)      | NO  |    | 255        |      |
| classes15            | int(11)      | NO  |    | 255        |      |
| classes16            | int(11)      | NO  |    | 255        |      |
| CastingAnim          | int(11)      | NO  |    | 44        |      |
| TargetAnim          | int(11)      | NO  |    | 13        |      |
| TravelType          | int(11)      | NO  |    | 0          |      |
| SpellAffectIndex    | int(11)      | NO  |    | -1        |      |
| field124            | int(11)      | NO  |    | 0          |      |
| field125            | int(11)      | NO  |    | 0          |      |
| deities1            | int(11)      | NO  |    | 0          |      |
| deities2            | int(11)      | NO  |    | 0          |      |
| deities3            | int(11)      | NO  |    | 0          |      |
| deities4            | int(11)      | NO  |    | 0          |      |
| deities5            | int(11)      | NO  |    | 0          |      |
| deities6            | int(11)      | NO  |    | 0          |      |
| deities7            | int(11)      | NO  |    | 0          |      |
| deities8            | int(11)      | NO  |    | 0          |      |
| deities9            | int(11)      | NO  |    | 0          |      |
| deities10            | int(11)      | NO  |    | 0          |      |
| deities11            | int(11)      | NO  |    | 0          |      |
| deities12            | int(12)      | NO  |    | 0          |      |
| deities13            | int(11)      | NO  |    | 0          |      |
| deities14            | int(11)      | NO  |    | 0          |      |
| deities15            | int(11)      | NO  |    | 0          |      |
| deities16            | int(11)      | NO  |    | 0          |      |
| field142            | int(11)      | NO  |    | 100        |      |
| field143            | int(11)      | NO  |    | 0          |      |
| new_icon            | int(11)      | NO  |    | 161        |      |
| spellanim            | int(11)      | NO  |    | 0          |      |
| uninterruptable      | int(11)      | NO  |    | 0          |      |
| ResistDiff          | int(11)      | NO  |    | -150      |      |
| dot_stacking_exempt  | int(11)      | NO  |    | 0          |      |
| deleteable          | int(11)      | NO  |    | 0          |      |
| RecourseLink        | int(11)      | NO  |    | 0          |      |
| field151            | int(11)      | NO  |    | 0          |      |
| field152            | int(11)      | NO  |    | 0          |      |
| field153            | int(11)      | NO  |    | 0          |      |
| short_buff_box      | int(11)      | NO  |    | -1        |      |
| descnum              | int(11)      | NO  |    | 0          |      |
| typedescnum          | int(11)      | YES  |    | NULL      |      |
| effectdescnum        | int(11)      | YES  |    | NULL      |      |
| field158            | int(11)      | YES  |    | NULL      |      |
| field159            | int(11)      | NO  |    | 0          |      |
| field160            | int(11)      | NO  |    | 0          |      |
| field161            | int(11)      | NO  |    | 0          |      |
| bonushate            | int(11)      | NO  |    | 0          |      |
| field163            | int(11)      | NO  |    | 100        |      |
| field164            | int(11)      | NO  |    | -150      |      |
| field165            | int(11)      | NO  |    | 0          |      |
| EndurCost            | int(11)      | NO  |    | 0          |      |
| EndurTimerIndex      | int(11)      | NO  |    | 0          |      |
| field168            | int(11)      | NO  |    | 0          |      |
| field169            | int(11)      | NO  |    | 0          |      |
| field170            | int(11)      | NO  |    | 0          |      |
| field171            | int(11)      | NO  |    | 0          |      |
| field172            | int(11)      | NO  |    | 0          |      |
| HateAdded            | int(11)      | NO  |    | 0          |      |
| EndurUpkeep          | int(11)      | NO  |    | 0          |      |
| field175            | int(11)      | YES  |    | NULL      |      |
| numhits              | int(11)      | NO  |    | 0          |      |
| pvpresistbase        | int(11)      | NO  |    | -150      |      |
| pvpresistcalc        | int(11)      | NO  |    | 100        |      |
| pvpresistcap        | int(11)      | NO  |    | -150      |      |
| spell_category      | int(11)      | NO  |    | -99        |      |
| field181            | int(11)      | NO  |    | 7          |      |
| field182            | int(11)      | NO  |    | 65        |      |
| field183            | int(11)      | NO  |    | 0          |      |
| field184            | int(11)      | NO  |    | 0          |      |
| can_mgb              | int(11)      | NO  |    | 0          |      |
| nodispell            | int(11)      | NO  |    | -1        |      |
| npc_category        | int(11)      | NO  |    | 0          |      |
| npc_usefulness      | int(11)      | NO  |    | 0          |      |
| field189            | int(11)      | NO  |    | 0          |      |
| field190            | int(11)      | NO  |    | 0          |      |
| field191            | int(11)      | NO  |    | 0          |      |
| field192            | int(11)      | NO  |    | 0          |      |
| nimbuseffect        | int(11)      | YES  |    | 0          |      |
| field194            | int(11)      | NO  |    | 0          |      |
| field195            | int(11)      | NO  |    | 0          |      |
| field196            | int(11)      | NO  |    | 0          |      |
| field197            | int(11)      | NO  |    | 0          |      |
| field198            | int(11)      | NO  |    | 0          |      |
| field199            | int(11)      | NO  |    | 1          |      |
| field200            | int(11)      | NO  |    | 0          |      |
| field201            | int(11)      | NO  |    | 0          |      |
| field202            | int(11)      | NO  |    | 0          |      |
| field203            | int(11)      | YES  |    | 0          |      |
| field204            | int(11)      | YES  |    | 0          |      |
| field205            | int(11)      | YES  |    | 0          |      |
| field206            | int(11)      | YES  |    | -1        |      |
| spellgroup          | int(11)      | YES  |    | 0          |      |
| field208            | int(11)      | YES  |    | 0          |      |
| field209            | int(11)      | YES  |    | 0          |      |
| field210            | int(11)      | YES  |    | 1          |      |
| field211            | int(11)      | YES  |    | 0          |      |
| allowrest            | int(11)      | YES  |    | 0          |      |
| field213            | int(11)      | YES  |    | 1          |      |
| field214            | int(11)      | YES  |    | 1          |      |
+----------------------+--------------+------+-----+------------+-------+
215 rows in set (0.02 sec)


pfyon 09-21-2010 05:35 PM

And here's the error reported by the editor:
Code:

You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'range, aoerange, pushback, pushup, cast_time, recovery_time, recast_time, buffdu' at line 1
When I put backticks (`) around 'range' from the query you posted earlier in this thread, it works.

edit: also, not exactly sure what you mean by blind inserts, but if I use
Code:

mysql> insert into blind values (1,'test','test',1);
Query OK, 1 row affected (0.24 sec)

with table
Code:

mysql> show columns in blind;
+-------+------------------+------+-----+---------+----------------+
| Field | Type            | Null | Key | Default | Extra          |
+-------+------------------+------+-----+---------+----------------+
| id    | int(10) unsigned | NO  | PRI | NULL    | auto_increment |
| col1  | varchar(45)      | NO  |    | NULL    |                |
| col2  | varchar(45)      | NO  |    | NULL    |                |
| col3  | int(10) unsigned | NO  |    | NULL    |                |
+-------+------------------+------+-----+---------+----------------+
4 rows in set (0.00 sec)

It works fine.

Code:

mysql> select * from blind;
+----+------+------+------+
| id | col1 | col2 | col3 |
+----+------+------+------+
|  1 | test | test |    1 |
+----+------+------+------+
1 row in set (0.00 sec)

There's probably a better way to auto insert the index, though.

Funkey Monkey 10-07-2010 07:29 PM

any word on this error? Im trying 1.3 and I get that range error msg before i can even get in and edit something. I get the msg on starting screen when i hit use spellfile from database. Also get the error if i load from local spell file and then try to write full to database.

Null 10-11-2010 01:24 PM

Been sort of swamped/moving/generally doing other shit. I'll try to patch it up in the near future, along with the ability to edit the db strings file.

Thanks for being patient.

Templus 11-08-2010 10:24 AM

can't seem to get it to connect to my database :( not sure why, I enter in all the information correctly

Null 04-18-2011 12:44 AM

v1.8
 
Changes
  • Fixed some MySQL query issues, let me know if anyone has any other issues with them.
  • Added a gem icon viewer to go along side the buff icon viewer.
  • Added the ability to edit the dbstr_us.txt. The caveat is that the file must be saved separately from the spells.
  • Added a Resistance Simulator which allows you to edit spell resist formulas on the fly, view graphs of your formulas, setup resist modifiers for spell types and classes, and then test those resistances against two mock characters. This is entirely hooked into the spell editor so any changes that you make to the spells in the editor are automatically reflected in the simulator.

Remember to run trustfall.bat before using the editor...

Enjoy!

Null Spell Editor v1.8
Null Spell Editor v1.8 (No Video)

deaddraqear 04-19-2011 01:57 PM

Hey Null.. Not sure if I'm missing something here, but with the latest version, I cannot click on "mana" box to edit value at all. In the old version, it works fine. (old version obviously refers to latest release prior to 1.8)


Also, have a question regarding old version. I cannot change the "skill" of any spells.. I can do everything else just fine, but the drop down list for skill type is blank other then the pre-chosen skill. What I have been doing is just copy/editing spells, then going into navicat to change the skill used. There something I messed up on when loading config up?

edit: Playing with it a little differently (keyboard only), I realized I can just tab over just fine. Playing with it further, I found I cannot click on any of the boxes to on the left side below Name and above the duration drop box. (new icon, particle effect, skill drop box, mana, casting time, spell group). Not really a big deal, but I'm sure this isn't as intended?

Thx for 1.8 release tho, I can now choose skills and whatnot, so you can disregard the "question". Great job!

Null 04-19-2011 07:59 PM

Fixed!

1.8.1
1.8.1 (no video)

Akkadius 04-26-2011 08:19 PM

Quote:

Originally Posted by Null (Post 198719)

Null, you are the man!

Astal 05-03-2011 08:51 PM

Quote:

Originally Posted by Null (Post 198719)

Hey null, question about editing the strings.

How does it work, you just type in the ID you want the string to have then the description and hit save string file or?

I tried this but when i check that spell again the description for the string ID i entered comes up blank

Null 05-04-2011 12:20 AM

You can change the number if you want or you can just edit that string value for its default id. The deal is that you have to save the string file separately from the spell file (File-> Save String File) and anyone playing on your server will need to save that file into their Everquest directory.

Astal 05-04-2011 06:53 PM

when you say you can change the number if you want.

It defaults to 0 correct? cause mine do, unless thats because the spells are already made. Anyway i tried setting the number to 35000, typed the description, saved the string file and the spell file and reloaded both and the field was blank and if I erased 35000 and typed it in again it was still blank.

Just wanna make sure im not doing something wrong

Also, should it take 60 seconds to save the string file?


Ok i just did the same thing and confirmed it does not save to the string file in 1.81 atleast for me. If its just me thats fine I can deal with that ill just edit the string file normally since i know how now.


All times are GMT -4. The time now is 04:21 AM.

Powered by vBulletin®, Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.