Jump to content

Jonne

Members
  • Posts

    153
  • Joined

  • Last visited

Posts posted by Jonne

  1. Just because Linus Torvalds is involved with GIT or because of the hype?

    So, another suggestion I would like to make. Converting from SVN to GIT. GIT has more functionality and has stronger compression methods. I heard when Mozilla moved FireFox from SVN to GIT they saved 80% of memory. Also it seems to be faster, it's easier to work in teams and the branching makes it possible to work on something while still getting updates and also creating hotfixxes.

    I might not be a GIT-Guru, so could you clarify some of your arguments? What functionalities and compression methods has GIT? How would a project, such as rAthena, benefit of using GIT instead of Subversion? Can you give a link where it is written down, that Mozilla really saved 80% of memory? Is this related to the compression methods (just out of curiosity)? What exactly seems to be faster? I thought Subversion is popular for their definition of "branching", where does GIT differ from Subversion in this case? Why is it easier to work in teams? How does the merging work like? What do you mean with "still getting updates and also creating hotfixxes"?

    I aprove to change svn to git. I think everyone knows the benefics of changing the systems.

    Seems like I'm quite a noob, so could you explain this benefits in details from your personal experience with GIT?

    As I would, concerning the "compression methods", just quote this anyways, here is a link. A small sum up: Both, SVN and GIT, use the same compression algorithm, but SVN keeps some files uncompressed whereas GIT doesn't. The Post also explains how it keeps up its speed anyways (even speeds up).

    It is easier to work in teams because of the forking that SkzBR mentioned. You create Sub-Branches without creating a whole new folder with all files (save disk space) and can work in it while the Main-Branch still keeps getting updated. You can then merge your changes to the Main-Branch. The Main-Branch could be a "Stable" release whereas the other one is a developing version. Every developer can have "unlimited" amounts of branches etc. Also there is the possibility of the team to share Diff's directly instead of commiting and fetching from the Main-Server but rather Commit to a teammember into his Branch. GIT proves to have taken SVN as draft but added lots of functionality.

  2. So, another suggestion I would like to make. Converting from SVN to GIT. GIT has more functionality and has stronger compression methods. I heard when Mozilla moved FireFox from SVN to GIT they saved 80% of memory. Also it seems to be faster, it's easier to work in teams and the branching makes it possible to work on something while still getting updates and also creating hotfixxes.

    Opinions?

    P.S.: There are tools to convert SVN to GIT. I think it's called GIT-SVN under Linux.

    • Upvote 2
  3. src/map/Makefile.in

    Add achievement.o in MAP_OBJ

    Add achievement.h in MAP_H

    I did this but still it gives me this error

    
    obj_sql/map.o: In function `do_final':
    /opt/3ceamV1/src/map/map.c:3665: undefined reference to `do_final_achievement'
    obj_sql/map.o: In function `do_init':
    /opt/3ceamV1/src/map/map.c:3904: undefined reference to `do_init_achievement'
    obj_sql/clif.o: In function `clif_parse_LoadEndAck':
    /opt/3ceamV1/src/map/clif.c:9087: undefined reference to `achievement_update_explore'
    obj_sql/pc.o: In function `pc_authok':
    /opt/3ceamV1/src/map/pc.c:1197: undefined reference to `achievement_loadTracker'
    obj_sql/pc.o: In function `pc_useitem':
    /opt/3ceamV1/src/map/pc.c:4162: undefined reference to `achievement_update_itemuse'
    obj_sql/pc.o: In function `pc_additem':
    /opt/3ceamV1/src/map/pc.c:3720: undefined reference to `achievement_update_itemfind'
    obj_sql/mob.o: In function `mob_dead':
    /opt/3ceamV1/src/map/mob.c:2050: undefined reference to `achievement_update_mob'
    obj_sql/script.o: In function `buildin_getachievementcutin':
    /opt/3ceamV1/src/map/script.c:15154: undefined reference to `achievement_exists'
    obj_sql/script.o: In function `buildin_achieve':
    /opt/3ceamV1/src/map/script.c:15131: undefined reference to `achievement_exists'
    /opt/3ceamV1/src/map/script.c:15143: undefined reference to `achievement_achieve'
    obj_sql/script.o: In function `buildin_getachievementname':
    /opt/3ceamV1/src/map/script.c:15099: undefined reference to `achievement_exists'
    obj_sql/script.o: In function `buildin_getachievementinfo':
    /opt/3ceamV1/src/map/script.c:15047: undefined reference to `achievement_exists'
    /opt/3ceamV1/src/map/script.c:15081: undefined reference to `achievement_searchTrackerIndex'
    obj_sql/atcommand.o: In function `atcommand_achieve':
    /opt/3ceamV1/src/map/atcommand.c:9285: undefined reference to `achievement_exists'
    /opt/3ceamV1/src/map/atcommand.c:9298: undefined reference to `achievement_achieve'
    obj_sql/atcommand.o: In function `atcommand_reloadachievement':
    /opt/3ceamV1/src/map/atcommand.c:9259: undefined reference to `reload_achievementDB'
    obj_sql/quest.o: In function `quest_update_status':
    /opt/3ceamV1/src/map/quest.c:254: undefined reference to `achievement_update_quest'
    collect2: ld returned 1 exit status
    make[1]: *** [map-server_sql] Error 1
    
    

    You are using 3CeAM. I'm not sure whether this is compatible at all.

  4. It does not work anymore with the latest rAthena version and I don't have the time to update it. If you know your stuff, you can use it, else it is not worth the effort. MOD can close this or move to archive. Sorry about that, but I don't provide support for it anymore.

  5. Do you have the patch for the latest rev?

    Thank you!

    No, sorry. I have it for the latest patch(with some special functionality) but for my Sever, so I can't provide it. And I also don't take care of this project anymore activly. At best find someone who knows what he does to apply it to your server or gamble around. Or just write one via NPC.

  6. Ich kanns ja mal versuchen^^ falls es nicht klappen sollte, hat wer noch ne andere idee? /no1

    Wie compilst du denn? Ich nutze Visual Studio 2010 Ultimate und bei mir klappt alles wunderbar.

    Einfach das Projekt öffnen(rathena-10.vcproj) und dann einfach Rechtsklick auf die entsprechenden Server und "Neu Erstellen". Es kann aber sein, dass es seit dem Char_sql entfernen Fehler gibt. Ich hab seit dem noch nicht compiled. Musst du mal schauen.

  7. atcommand.obj : error LNK2001: unresolved external symbol _achievement_exists

    atcommand.obj : error LNK2001: unresolved external symbol _reload_achievementDB

    atcommand.obj : error LNK2001: unresolved external symbol _achievement_achieve

    clif.obj : error LNK2001: unresolved external symbol _achievement_update_explore

    map.obj : error LNK2001: unresolved external symbol _do_init_achievement

    map.obj : error LNK2001: unresolved external symbol _do_final_achievement

    mob.obj : error LNK2001: unresolved external symbol _achievement_update_mob

    pc.obj : error LNK2001: unresolved external symbol _achievement_update_itemuse

    pc.obj : error LNK2001: unresolved external symbol _achievement_loadTracker

    pc.obj : error LNK2001: unresolved external symbol _achievement_update_itemfind

    quest.obj : error LNK2001: unresolved external symbol _achievement_update_quest

    script.obj : error LNK2001: unresolved external symbol _achievement_searchTrackerIndex

    ..map-server_sql.exe : fatal error LNK1120: 12 unresolved externals

    What's this ?

    Add achievement.c and achievement.h to your project or MAKEFILE

    • Upvote 1
  8. I test again on rAthena Lasted 154xx with achievement.patch

    Same this Problem about atcommand script

    Compile VC 2010

    Found Problem

    achievement.c

    in line 117

    if( ( flag = pc_additem( sd, &it, 1) ) )

    Fix Pickup Log

    if( ( flag = pc_additem( sd, &it, 1,LOG_TYPE_PICKDROP_PLAYER ) ) )

    And Coredump Map Server Crash

    Registers:

    eax=00032000 ebx=7ffd5000 ecx=00000000 edx=091ce570 esi=0012b590 edi=0012b6bc

    eip=007403c7 esp=0012b57c ebp=0012b584 iopl=0 nv up ei pl nz na po nc

    cs=001b ss=0023 ds=0023 es=0023 fs=003b gs=0000 efl=00010206

    Call stack:

    007403C7 H:rAthena - Trunk -Originalmap-server_sql.exe:007403C7 _chkstk f:ddvctoolscrt_bldSELF_X86crtsrcINTELchkstk.asm:99

    0068C762 H:rAthena - Trunk -Originalmap-server_sql.exe:0068C762 run_func h:rathena - trunk -originalsrcmapscript.c:3242

    0068D3B8 H:rAthena - Trunk -Originalmap-server_sql.exe:0068D3B8 run_script_main h:rathena - trunk -originalsrcmapscript.c:3491

    0068CEB0 H:rAthena - Trunk -Originalmap-server_sql.exe:0068CEB0 run_script h:rathena - trunk -originalsrcmapscript.c:3302

    006439DB H:rAthena - Trunk -Originalmap-server_sql.exe:006439DB npc_event_sub h:rathena - trunk -originalsrcmapnpc.c:782

    0064FA9B H:rAthena - Trunk -Originalmap-server_sql.exe:0064FA9B npc_script_event h:rathena - trunk -originalsrcmapnpc.c:3418

    005D5A85 H:rAthena - Trunk -Originalmap-server_sql.exe:005D5A85 clif_parse_LoadEndAck h:rathena - trunk -originalsrcmapclif.c:8892

    005F3164 H:rAthena - Trunk -Originalmap-server_sql.exe:005F3164 clif_parse h:rathena - trunk -originalsrcmapclif.c:15443

    00550ADD H:rAthena - Trunk -Originalmap-server_sql.exe:00550ADD do_sockets h:rathena - trunk -originalsrccommonsocket.c:786

    0053EA4D H:rAthena - Trunk -Originalmap-server_sql.exe:0053EA4D main h:rathena - trunk -originalsrccommoncore.c:266

    00745419 H:rAthena - Trunk -Originalmap-server_sql.exe:00745419 __tmainCRTStartup f:ddvctoolscrt_bldself_x86crtsrccrt0.c:278

    007452DF H:rAthena - Trunk -Originalmap-server_sql.exe:007452DF mainCRTStartup f:ddvctoolscrt_bldself_x86crtsrccrt0.c:189

    7C817077 C:WINDOWSsystem32kernel32.dll:7C817077 RegisterWaitForInputIdle

    Yes, rAthena changed to logging system. You have to change every pc_additem and pc_delitem that appear in the achievement system.

  9. I have found problem with achievement .patch

    map server crash away

    if include script command

    - script test_event -1,{

    end;

    OnPCLoginEvent:

    if (getgmlevel() > 0)

    atcommand "@hide";

    end;

    }

    Boom Disconnect and map server crash

    please check and fix :(

    Uhm, have you added any other patches? This does not seem related to my patch. Maybe it was not correctly imported due to version differences and you made a mistake. You provide too less information.

  10. hmm,

    may i request for ur .psd ^^

    no idea to make a achievement

    What is a "psd"?

    Okay, here a quick guide implying you want to add an achievement for killing 1 Poring and as reward you gain 1 Jellopy and 10 achievement points. The picture displayed for this achievement is poring.bmp.

    Go to SQL db. Use:

    INSERT INTO `achievement_db` (`type`, `name`, `cutin`, `nameid`, `points`)VALUES('0', 'Poring Killer', 'poring.bmp', '909', '10')

    (You can also add this through a GUI. Leave out all I left out as they are AUTO_INCREMENT or have standards if not needed.

    Now you need to specify the achievement:

    INSERT INTO `mob_achievement` VALUES('<id_autoincrement_gave_you>', '0', '1002', '1', '0', '0', '0', '0', '0', '0', '0', '0')

    This adds one condition to this achievement: Killing a Monster by ID(that's type 0). And the first monster is Poring(1002) - 1 time. The rest is empty.

    Now patch your poring.bmp into the illust folder(that's where card BMPs and cutin are). Go ingame and use @reloadachievements.

    That's it.

  11. Is there actual point tracker like Xbox's gamerscore or Playstation's Trophy score?

    Well, just use:

    SELECT SUM(`points`) FROM `achievement_db` WHERE 1

    for the maximum of points.

    And then use:

    SELECT `points` FROM `achievement_db`  WHERE `achievement_id` = (SELECT `achievement_id` FROM `achievement_tracker` WHERE `finished` = '1' AND `char_id` = 'X' LIMIT <counter_var>, 1)

    for how many one user has finished. Increase the counter_var until you receive an empty result or first fatch the whole achievement_tracker for one player, then the points.

    Great work. I recoded it all and optimized your work (but yes it's your Idea and I give you credits) to implement this on eAmod. With some differences in the code because I call to Char server for saving and load, and using TXT db to create achievements with parameters.

    I just want to inform you about the credit for your Idea.

    Well, no problem. I released it for free and anyone is free to use it. It's an old system and you can obviously optimize it and then use and sell it, if you want.

  12. Man muss doch auch in der sclientinfo / clientinfo.xml die Packet version einstellen,bei machen data Ordnern ist es nicht automatisch auf 25.

    Das wäre mir neu. oO

    Da stellt man doch nur den languagetype ein.

  13. On read, build the groups ( based on the inheritence, configs ). This would creaty a struct with several bitfields ( and command list?, or commands should have group list? )

    Since there needs to be a way to revoke the ability to use the command for certain groups (in case it is inherited by a group) there would most likely be a more complex structure than just a group list.

    What do you mean? It should still be possible to reload the system. So if I change one groups rights and reload, all inheritances are reloaded as well. If you want commands like @adjgmlevel, well they need to step aside.

  14. I've been trying to figure out 'clif_skill_damage' and 'clif_damage' in srcmapclif.c and was wondering if it's possible for it to show damage above 999,999 by showing damage/1000 + "k"

    So 1,020,342 damage would show up as 1020k.

    Just having it display the number is easy enough, and I just made it show an effect whenever the damage exceeds 1 million, but if anyone knows how I could get it to show the letter at the end, that'd be much appreciated! Or even how I could change the color of the numbers shown.

    For reference, I'm using rAthena rev. 15399 and the 2011-06-14b RagexeRE client.

    Afaik, it only sends over the number and the client automatically formats the string with dots. So you can't send over letters. If somebody proves me wrong, pease tell me!

  15. Pa Request po ng Full Chemical Protection Npc thanks

    What the... Do you REALLY expect any help here? You don't speak English and you post one sentence. You should be aware that we all are volunteers here and if people don't start making proper requests I can feel a lot of vexation coming. Post in national board if you can't speak English or at least use the Google Translator. This is just... annoying! Also, that is one of the simplest things to be done, you should consider learning it when putting up a server.

    Set(.@min, 5); // duration in minutes
    SC_Start(SC_CP_HELM, (.@min * 1000 * 60), 1);
    SC_Start(SC_CP_ARMOR, (.@min * 1000 * 60), 1);
    SC_Start(SC_CP_SHIELD, (.@min * 1000 * 60), 1);
    SC_Start(SC_CP_WEAPON, (.@min * 1000 * 60), 1);
    

  16. I think it would be better to have the commands and configs with true or false setting in the groups.

    That way we could revoke a permission from a inherited group.

    Example:

    gamemaster {
     permissions {
    can_trade: true,
    // ...
     }
     //...
    }
    supporter {
     commands {
    autotrade: true,
    iteminfo: true,
    // ...
     }
     permissions {
    can_trade: false, // overwrites 'true' of the gamemaster group
    // ...
     }
     inherit: gamemaster
    }
    

    True. And all not mentioned commands and permissions are automatically true or false? Or true for group_id = 0(user?) and false for group_id != 0 (GM?)...

×
×
  • Create New...