Jump to content

Truly

Members
  • Posts

    201
  • Joined

  • Last visited

  • Days Won

    1

Everything posted by Truly

  1. Yeah im pretty surprised you took this on to do alone O.O haha, really nice though man im sure this will be used immensely !
  2. Did you make any server modifications such as new items, source edits or anything that could be relevant?
  3. The script Emistry made should do the trick, if not tell us whats wrong, or what isnt the way you want in detail o:
  4. Ah thanks Emistry, missed that line in the conf haha!
  5. conf\battle\misc.conf Find this: // Define duration in msec of the day (default: 7200000 = 2 hours) // Set to 0 to disable day cycle (but not @day GM command). // Except 0, minimum is 60000 (1 minute) day_duration: 7200000 // Define duration in msec of the night (default: 1800000 = 30 min) // Set to 0 to disable night cycle (but not @night GM command). // Except 0, minimum is 60000 (1 minute) night_duration: 3600000 And change it to: // Define duration in msec of the day (default: 7200000 = 2 hours) // Set to 0 to disable day cycle (but not @day GM command). // Except 0, minimum is 60000 (1 minute) day_duration: 0 // Define duration in msec of the night (default: 1800000 = 30 min) // Set to 0 to disable night cycle (but not @night GM command). // Except 0, minimum is 60000 (1 minute) night_duration: 600000 This should work, if not let us know
  6. Just add a close2; in this spot (With minor edits ^^) if ( .@i == 10 ) goto OnMinute00; to if ( .@i == 10 ) { close2; goto OnMinute00; }
  7. This sounds really great! The merge along with new administration and reorganization seems like you said, "for this is the start of another era of Private server hosting." +1 for that haha
  8. Ahh yeah i was using phpmyadmin to import, and i believe the # was my problem. Thanks for the info guys !
  9. Haha well i honestly didnt understand it until a few weeks ago, and that was after learning the for loops, arrays, and some other nifty commands that arnt easy to just pick up. I would suggest to avoid this if you dont understand it, then later when you get better at scripting, take a look at it!
  10. Basically getarg Gets the Arguments of some type of calling action. For example: place,50,50,6%TAB%script%TAB%Man%TAB%115,{ mes "[Man]" mes "Gimme a number!"; next; input @number; if (callfunc("OddFunc",@number)) mes "It's Odd!"; close; } function%TAB%script%TAB%OddFunc%TAB%{ if (getarg(0)%2==0) return 0;// it's even return 1;// it's odd } This is the example from the script_commands.txt And basically it will allow you to send multiple sets of data through one line. With this Callfunc, it will call the function "OddFunc" and the first Argument is "@number" which was set 1 line before the callfunc. So the script then jumps to the function for "OddFunc" and uses the 1st Argument, as getarg(0). The 2nd argument would have been getarg(1) and so on and so forth (Same basic principle with arrays). The funtion then will do whatever you want, in this case it will check if its an Even number, if not it will return 1 to where the calling action is And in this case, if(1) is true, so it will mes "It's Odd!"
  11. I was actually wrong with the above idea ^, i tested the same thing with both methods and it seems to work fine now. I'm not sure what exactly was going on, but it seems to work properly.
  12. Hey, pretty simple question here, does the setitemscript function work ? I tried using the function and made my own unique version which (After editing and getting the errors out) still did not work. I also tried using the example the function gives you with no luck. I was wondering if this was never working or if it was fixed at a certain revision. (I am currently on revision 14742) Any information will help, Thanks, Truly~
  13. Oh wow haha did not think it was that simple, my b ! Will make sure to use google for any question, no matter the situation haha. And for the SQL error, it in a whole shows this: Error SQL query: # REPLACE INTO `item_db` VALUES (5597,'Bubble_Gum_In_Mouth','Bubble Gum In Mouth',5,20,NULL,0,NULL,2,NULL,0,0xFFFFFFFF,7,2,1,NULL,1,0,572,'bonus bMdef,2;',NULL,NULL); # REPLACE INTO `item_db` VALUES (5598,'Virgo_Crown','Virgo Crown',5,20,NULL,300,NULL,3,NULL,1,0xFFFFFFFF,7,2,256,NULL,70,1,573,'bonus bDex,2; bonus bAspdRate,1; if(getrefine()>6) { bonus2 bSubEle,Ele_Earth,5; autobonus "{ bonus bDex,20; }",10,6000,BF_WEAPON,"{ specialeffect2 EF_ENHANCE; }"; }',NULL,NULL); # REPLACE INTO `item_db` VALUES (5599,'Virgo_Diadem','Virgo Diadem',5,20,NULL,300,NULL,3,NULL,1,0xFFFFFFFF,7,2,256,NULL,70,1,574,'bonus bAspdRate,3; bonus2 bSubEle,Ele_Earth,5; if(getrefine()>6) bonus3 bAutoSpell,"MO_BALKYOUNG",1,50;',NULL,NULL); # REPLACE INTO `item_db` VALUES (5600,'Br_Twin_Ribbon','Brazil Twin Ribbon',5,20,NULL,100,NULL,1,NULL,0,0xFFFFFFFF,7,2,256,NULL,1,1,575,'bonus bAllStats,3; bonus bMdef,1;',NULL,NULL); # REPLACE INTO `item_db` VALUES (5601,'Br_Beret','Brazil Beret',5,20,NULL,100,NULL,[...] MySQL said: #1064 - 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 'REPLACE INTO `item_db` VALUES (5665,'Shaman_Hat','Shaman Hat',5,20,NULL,400,NULL' at line 69 +Edit alright all things aside the converter seems to be my hero, after converting the appropriate files i get no errors, and it seems to work fine, thanks a ton GodLesZ !
  14. Alright i just Re edited this post after finding my previous question out, but i have a new one haha. Basically i made my server use the sql db for the items and mobs, but i have a ton of custom items as well as newer / updated items that the sql file doesnt. Is there a way for me to easily add them to the sql file? Thanks, Truly~ +Edit: I managed to just copy over the updated sql files from the most recent revision, but im getting errors for the incorrect syntax: #1064 - 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 'REPLACE INTO `item_db` VALUES (5654,'Holy_Marching_Hat_J','Holy Marching Hat',5,' at line 54 I cant seem to find any "reserved words" in play here... o.o
  15. The minimap will be used unless you put the "old morroc" minimap in the map folder. o:
  16. To add it so it just overwrites the old one, make sure it is in the data folder or GRF that you are using for your server. Then run the mapcache to make sure it is applied to the server. There really isnt much needed to overwrite maps in the data.grf because all you need is to just have it in another location so that the data.ini takes the latest one. After these, it should work fine o:
  17. Can you post the script here (Using codebox) so we can see if we spot an error? You do not have to give us any specific detail, you can change the name so long as that thing you change doesnt effect others. Example: Changing a npc name would change something like triggered events with that name. But post the script if you would, if not we can only guess at the problem o.o
  18. Ah it seems that the revision 700 is not working hmm. Do you know where i can get a copy of it?
  19. Alright i have made a little progress with this, i have been debugging it for over an hour ~.~ seems it isnt as simple as i thought. I got it to recognize that you bought an item, and it updates an array for that item, but im having trouble removing that item from the shop. Hopefully we can get another brain in here to help with this o: Thus far: - shop quest_shop1 -1,501:50 prontera,153,153,3 script Free Equipments 917,{ setarray .setlimit[0],3,5; // Set the item limit here. *Note, make them match the Case/Callsub at the end of this script. if(getgmlevel() == 99) { mes "[Donation Manager]"; mes "^FF0000~Admin Menu~^000000"; mes "Would you like to reset"; mes "the item limit sir?"; switch(select("No, don't:Yes, reset it")) { case 1: next; mes "[Donation Manager]"; mes "It's alright, no rush."; next; break; case 2: next; mes "[Donation Manager]"; mes "Are you sure you want"; mes "the item limit to be ^FF0000reset^000000?"; switch(select("No, don't:Yes, reset it")) { case 1: next; mes "[Donation Manager]"; mes "It's alright, no rush."; next; break; case 2: next; set .itemlimit1,0; mes "[Donation Manager]"; mes "It has been done!"; close; } break; } } set .@temp,0; set @i,0; mes "[Donation Manager]"; mes "Please select the equipment you want"; callshop "quest_shop1",1; npcshopattach "quest_shop1"; end; OnBuyItem: if(.BuildQuest) { for(set .e,0; !compare(getarg(.e+1) + "","Zeny"); set .e,.e+2) {} for (set .@t,0; .@t < getarraysize(.itemlimit)+1; set .@t,.@t + 1) { if(.setlimit[.@t] < .itemlimit[.@t]) { npcshopdelitem "quest_shop1",914,1; set .@temp,.@temp+1; } else npcshopadditem "quest_shop1",getarg(.e+2),getarg(.e)*compare(getarg(.e+1) + "","SZeny"); } setarray .Shop[.i],getarg(.e+2); set .i,.i+1; goto Quest_Setup; } if(.@temp > getarraysize(.itemlimit)) goto L_none; if(.Shop[@i]!=@bought_nameid) for(set @i,1; 1; set @i,@i+1) if(.Shop[@i]==@bought_nameid) { set .i,@i; callsub Quest_Setup; } for(set @i,1; !@e; set @i,@i+1) if(.Shop[@i]==@bought_nameid) { set @e,1; set .i,@i; callsub Quest_Setup; } mes "[shop Quest NPC]"; mes "I require the following:"; for(set @i,0; !compare(getarg(@i+1) + "","Zeny"); set @i,@i+2) mes "^FF0000" + ((countitem(getarg(@i))>=getarg(@i+1))? "^00FF00":"") + "" + getarg(@i+1) + " " + getitemname(getarg(@i)) + " [" + countitem(getarg(@i)) + "/" + getarg(@i+1) + "]"; if(getarg(@i)) mes "^FF0000" + ((Zeny>=getarg(@i))? "^00FF00":"") + "" + getarg(@i) + " Zeny"; mes "^000000In exchange, I will give you:^0000FF"; for(set @i,@i+2; getarg(@i+1,0); set @i,@i+2) mes getarg(@i+1) + " " + getitemname(getarg(@i)); switch(select("Exchange:" + (((((getiteminfo(@bought_nameid,5) & 1) || (getiteminfo(@bought_nameid,5) & 256) || (getiteminfo(@bought_nameid,5) & 512)) && @equip==0))? "Preview Item":"") + ":No thanks")) { case 1: for(set @i,0; !compare(getarg(@i+1) + "","Zeny"); set @i,@i+2) if(countitem(getarg(@i)) < getarg(@i+1)) { next; mes "You have " + countitem(getarg(@i)) + " " + getitemname(getarg(@i)) + ", while I require " + getarg(@i+1) + "."; mes "Please obtain ^FF0000" + (getarg(@i+1)-countitem(getarg(@i))) + " more " + getitemname(getarg(@i)) + "^000000."; close; } if(Zeny < getarg(@i)) { next; mes "You do not have enough Zeny."; mes "Please obtain ^FF0000" + (getarg(@i)-Zeny) + " more Zeny^000000."; close; } for(set @i,0; !compare(getarg(@i+1) + "","Zeny"); set @i,@i+2) delitem getarg(@i),getarg(@i+1); set Zeny,Zeny-getarg(@i); for(set @i,@i+2; getarg(@i+1,0); set @i,@i+2) getitem getarg(@i),getarg(@i+1); set .itemlimit[getarg(6)],.itemlimit[getarg(6)] + 1; if (compare(getarg(@i,0) + "","announce")) announce strcharinfo(0) + " has just obtained " + getitemname(@bought_nameid) + "!",bc_all; close; case 2: set @bottomview, getlook(3); set @topview, getlook(4); set @midview, getlook(5); addtimer 1000, strnpcinfo(3)+"::On_Leave"; set @equip,getiteminfo(@bought_nameid, 5); set @view, getiteminfo(@bought_nameid, 11); if(@equip != -1 && @view > 0) { if(@equip & 1) atcommand "@changelook 3 " + @view; if(@equip & 256) atcommand "@changelook 1 " + @view; if(@equip & 512) atcommand "@changelook 2 " + @view; } next; goto OnBuyItem; case 3: close; } On_Leave: atcommand "@changelook 1 " + @topview; atcommand "@changelook 2 " + @midview; atcommand "@changelook 3 " + @bottomview; set @equip,0; set @view,0; set @topview,0; set @midview,0; set @bottomview,0; end; L_none: next; mes "[Donation Manager]"; mes "Oh I am sorry... "; mes "There seems to be a"; mes "shortage of items currently."; next; mes "[Donation Manager]"; mes "Please try again later!"; close; end; OnInit: npcshopitem "quest_shop1",0,0; npcshopdelitem "quest_shop1",0,0; set .BuildQuest,1; set .i,1; Quest_Setup: switch(.i) { case 1: callsub OnBuyItem,914,600,600,"SZeny",678,1,0; // Little modification here. Add a final argument being the item number. case 2: callsub OnBuyItem,915,600,600,"SZeny",679,1,1; // Notice how it increases by 1 every time. case 3: set .BuildQuest,0; set .e,0; set .i,0; // This line prevents that Warning on your Console about item id 0. } } There were some minor errors with the script before such as an incorrect shop name and some others. This one has pretty much what it should, and 1/2 of the item limit edit.
  20. Oh wow there is a different team continuing BrowEdit?? Thats really good to know, i will have to look through and see whats different between these revisions. (When im home, at work right now with no translation add on!! haha) Thanks again, +1 for you
  21. Yeah its pretty interesting, but it is easy to just maneuver around. I am doing the idea / fix i proposed and it seems to work fine. The Lightmaps projected onto flat terrain will sustain AFTER sloping which is nice I wonder if the somewhat questionable systems in BrowEdit will be fixed... then again for as along as i was mapping, it was revision 620 ~ Thanks again for all the info guys!
  22. Truly

    Howdy!

    Welcome to the forum man!
  23. Truly

    eA Theme

    Yeah i really like this one. The blue isn't as intense and its pretty soothing xD
  24. It should work fine as long as you change the npc variable name, so like .ThisItemLimit1 then .ThisItemLimit2 etc. Btw i didnt mention it, but i should now. If the case is not sending data back up, and all cases are empty, you will probably get some empty menus or something later on. You can easily solve this by adding an if statement on the end basically seeing if there is data in the shop, if not the goto some L_noitem menu.
  25. Alright sorry for the delayed response, but i have some small updates. I have tested changing the lightmaps intensity, location, and other aspects. I also messed with global lighting and my other "sun" lights with no success. After further examination, i found it to be the terrain slope that is the issue, oddly enough it happens regardless of other aspects for other maps. I decided that i will act as if there is no lightmap problems, then when i am done with the map, i sill smooth the map out, generate the lightmaps, then undo the smooth to keep the correct lights. ^ Smart idea huh (j.k)? haha Thanks for your help~
×
×
  • Create New...