Jump to content

TMP4

Contributor
  • Posts

    1111
  • Joined

  • Last visited

  • Days Won

    20
  • Feedback

    100%

Everything posted by TMP4

  1. Thanks for reporting this. It is because of the MySQL56 having sql_mode set to STRICT_TRANS_TABLES thefefore we can not save zeroth element to the size column because it is an "enum" type, it would be invalid, "enum" must have a specified element (from 1 to n) or null. To solve this we can either change sql_mode in my.cnf but I choose to just modify the size column from "enum" to "set" ("set" can be set for zeroth element), because it would be harder for people to configure the mysql server if they put it to vps. Also it is an unused column, not worth the hassle. So Mega archive updated: 2022.12.14: - Fixed an issue with mob_proto size column after the MySQL56 update. Because MySQL56 have set sql_mode to STRICT_TRANS_TABLES by default, we could not save zeroth element for an enum. The easiest solution is to modify it from "enum" to "set", because we can set zeroth element for "set" type. - Added locale_string.txt translation for "´ő ŔĚ»ó ŔĚ ľĆŔĚĹŰŔ¸·Î ĽÓĽşŔ» Ăß°ˇÇŇ Ľö ľř˝Ŕ´Ď´Ů"; (6-7 bonus). You can modify the size column in navicat design table, just set size to "set". Or you can run this query: ALTER TABLE `mob_proto` MODIFY COLUMN `size` set('SMALL','MEDIUM','BIG') CHARACTER SET latin1 COLLATE latin1_swedish_ci NULL DEFAULT 'SMALL' AFTER `level`; --------------------------------------------------------------------------- I knew about these, yes the ;;, warnings, or even TRUE instead of True and stuffs like that can hurt eyes but since it is a reference serverfile and not advanced files, I kept everything as it was, unless it is a bug/exploit. But thanks for the list, it is useful and people can use it to tidy and improve their code.
  2. The original. Turn off auto encoding in notepad settings.
  3. Yes that's a missing translation. Add this to locale_string: "´ő ŔĚ»ó ŔĚ ľĆŔĚĹŰŔ¸·Î ĽÓĽşŔ» Ăß°ˇÇŇ Ľö ľř˝Ŕ´Ď´Ů"; "You cannot add more bonus."; Then it will show the translated text when you want to add a 3rd 6-7:
  4. I only tested english now but it works. What language do you use? If it works in the untouched serverfile, you may messed up the cpp file character encoding (char_item.cpp i think).
  5. Could not reproduce it. First I tought it maybe your attached debugger, but I tried with a debugger too: In the past year and a half, no one has reported such an error to me, even though quite a lot of people have used and are using this server file. Is it happening with an untouched source too? (Redownload & test)
  6. So I reinscpected the level refresh. Actually it is quite simple to make others players see your actual level: PythonNetworkStreamPhaseGame.cpp bool CPythonNetworkStream::RecvPointChange() { [...] if (PointChange.dwVID == pInstance->GetVirtualID()) { [...] } //Add this else else { if (PointChange.Type == POINT_LEVEL) { pInstance = CPythonCharacterManager::Instance().GetInstancePtr(PointChange.dwVID); if (pInstance) { pInstance->SetLevel(PointChange.value); pInstance->UpdateTextTailLevel(PointChange.value); } } } return true; } You just need to add that else and it will work. Be aware it will only work when pointchange packet is broadcasted, e.g. someone leveled up via killing mobs, getting exp. If a player receive level by GM command (/level, /advance) the packet will not broadcasted to all players, only the specific player gets it. Edit: Mega archive updated with this change. 2022.12.05: - Added level refresh for other players at RecvPointChange in PythonNetworkStreamPhaseGame.cpp line 1540-1550.
  7. Two very important thing: Do not use FreeBSD 9.2 in late 2022. It was EOL at December 31, 2014... Do not download random libs from the internet. If you have an x64 vps, then compile game-db in virtualbox running same FreeBSD version just x32 where you can compile, and take the libs from the vm.
  8. It's not really a bug but a deficiency, beacause global level refresh is actually does not exists in 40k. Since there is no public tutorial, I could not add the global refresh for players. I did not want to take it out from other serverfile.
  9. The item is not time limited probably that's why the socket 2 does not set in the player.item table. I suggest you to modify the ride.quest then like this: ride_info = { [71114] = { 20110, 5*60, apply.DEF_GRADE_BONUS, 75, 75, true }, [71115] = { 20110, 24*60, apply.DEF_GRADE_BONUS, 100, 75, false }, [71116] = { 20111, 5*60, apply.DEF_GRADE_BONUS, 100, 80, true }, [71117] = { 20111, 24*60, apply.DEF_GRADE_BONUS, 150, 80, false }, [71118] = { 20112, 5*60, apply.DEF_GRADE_BONUS, 125, 85, true }, [71119] = { 20112, 24*60, apply.DEF_GRADE_BONUS, 200, 85, false }, [71120] = { 20113, 5*60, apply.ATT_GRADE_BONUS, 200, 85, true }, [71121] = { 20113, 24*60, apply.ATT_GRADE_BONUS, 300, 85, false }, [71171] = { 20227, item.get_socket(2)*60, apply.MOV_SPEED, 60, 1, false, false, false}, [71172] = { 20226, item.get_socket(2)*60, apply.MOV_SPEED, 60, 1, false, false, false}, } Don't forget to recompile the quests via make.py or questcompile command. Edit: Tested it, updated the mega.nz archive with this quest modification.
  10. You have to re-summon the item with /i because the socket already set with 0 in the old item in you inventory.
  11. You missed it, you set for 71114, not 71115. Set it for 71115, one row down.
  12. The right id for the boar mount is 71114. Use that. 71115 were unused / experimental item, what were not available for players. But as you highlighted in your quest, it takes the item_proto's socket 2 value * 60. If you set a socket 2 value greater than 0, or modifiy the quest for a fix time like 71114 have, then 71115 will work too. It's the very first version, that's why it needs 15 slots from Rough to Cut. They nerfed the requirements over the years. The first version values are: Rough to Cut: 15 Cut to Rare: 10 Rare to Antique: 5 Antique to Legendary: 3 Legendary to Mythic: not exist in the first version
  13. Just pkg install mysql56-server No need to do any modification. It'll work as 55. Edit: VDI replaced MySQL55 with MySQL56. Also updated the tutorial txts. Mega archive updated.
  14. Thats only the unpacked clientside parts, mostly without the binary c++ and root part. You can apply anything unless you code the svside and clientside binary part. They're not 1 click install. However there are releases in this forum (free and paid too) for new systems, new dungeons etc to install easier.
  15. That problem is not related to that but MySQL55 and 56. Probably your website wants to write an extra column, but that column does not exist in the account table. Check this: Don't know what you mean. The 40k was the last official serverside leak.
  16. If you compile the game & db on FreeBSD12 then yes, if you don't then not.
  17. DEX does not incrase defence. They're nex to each other but they're completly different. It is what it has been since metin2 released. Let me quote the tooltips when you hover them: HP: "Increase Increase HP and defence" <-- works fine in your video DEX: "Increase attack and evasion" <-- works fine in your video
  18. DEX does not increase Defence, yes they're next to each other but they're completly different thing. If you hover on the DEX: "Increase attack and evasion" And those 2 are really increasing. It's up to you. The one you can install / afford. I'm not running any live server, I cannot share my experience about offline shops. What's sure is if you go with a free public version, you gonna need some skill to fix bugs and patch things.
  19. Real_name does not exists in a default account table, so add it. ALTER TABLE account ADD COLUMN `real_name` VARCHAR(255) DEFAULT NULL AFTER `email`;
  20. The webpage probably uses an extra column. Check the insert into statement or paste here.
  21. Try to use mysqldump for the backup and restore: [Hidden Content]
  22. Use MySQL56. pkg install mysql56-server Since the tar.gz cames from a mysql55 server I suggest you to use the provided sql dump files instead to create the database. Don't forget to create the mysql users for the server. MySQL56 works by default. No modifications need to be made. I'm using it for my test srv. "I am having problems" If you do not tell us your problems, we cannot help.
  23. Yes, Gameforge had several servers in 2013-2014 running 40k where way more than 1,000 players were online at the same time. And this source is 40k with some minor fixes.
  24. Your server have Ip of 192.168.1.193 but you set 193.168.0.193 on client.
×
×
  • Create New...

Important Information

Terms of Use / Privacy Policy / Guidelines / We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.