Jump to content

[GF]Froslass

Active Member
  • Posts

    42
  • Joined

  • Feedback

    0%

About [GF]Froslass

Informations

  • Gender
    Male
  • Country
    Italy
  • Nationality
    Italian

Social Networks

  • Discord
    froslass96

Recent Profile Visitors

3559 profile views

[GF]Froslass's Achievements

Enthusiast

Enthusiast (6/16)

  • Dedicated
  • Very Popular Rare
  • Reacting Well
  • First Post
  • Collaborator

Recent Badges

168

Reputation

  1. Make sure all files in the client are lowercase. MapProperty.txt should be mapproperty.txt, AreaAmbienceData.txt should be areaambiencedata.txt etc. If it's already like this, tell us all the steps you did to implement the map, and post your mapproperty.txt and setting.txt
  2. I can't read your mind, i don't know what you have and haven't tried if you don't state it. And i don't know what you mean by hp duplicates if you don't post an example, just search this function inside the whole source and see where it gets called to fix the issue, i'm done trying to help you, good luck!
  3. Just look at your prints.. This gives the maxhp you want to edit, so change: into: int hp = GetMaxHP();
  4. That error is self explanatory.. "Data too long for column 'quickslot'", either your source is corrupted, or the database is, make sure the column quick_slot is of type tinyblob
  5. The problem is that you are always calling the last return true, because you have put #ifdef ENABLE_VIEW_TARGET_PLAYER_HP between if (rkInstVictim.IsEnemy()) and return true. Change it to this and it will work: bool CInstanceBase::CanViewTargetHP(CInstanceBase& rkInstVictim) { if (rkInstVictim.IsStone()) return true; if (rkInstVictim.IsWoodenDoor()) return true; if (rkInstVictim.IsEnemy()) return true; #ifdef ENABLE_VIEW_TARGET_PLAYER_HP if (rkInstVictim.IsPC()) return true; #endif return false; }
  6. Yes this is how our code works. Just use the code @ jking provided, and apply my fix:
  7. This doesn't seems right.. wouldn't it make much more sense inside EVENTFUNC(mining_event): int iPct = GetOrePct(ch); if (number(1, 100) <= iPct) { OreDrop(ch, load->GetRaceNum()); ch->ChatPacket(CHAT_TYPE_INFO, LC_TEXT("䱤¿¡ ¼º°øÇÏ¿´½À´Ï´Ù.")); } and change it to this: int iPct = GetOrePct(ch); LPITEM pick_costume = ch->GetWear(WEAR_COSTUME_WEAPON); if (pick_costume && pick_costume->GetVnum() == YOUR_ITEM_VNUM) iPct += 10; if (number(1, 100) <= iPct) { OreDrop(ch, load->GetRaceNum()); ch->ChatPacket(CHAT_TYPE_INFO, LC_TEXT("䱤¿¡ ¼º°øÇÏ¿´½À´Ï´Ù.")); } EDIT: Nvm, he wants double drop, i thought he wanted to increase the chance of dropping by 10%, i'm sorry EDIT2: It still doesn't seems right, shouldn't this: if (number(1, 100) <= 10) { dwRawOreVnum = YOUR_ITEM_VNUM_TO_DROP; } be: if (number(1, 100) <= 10) { iFractionCount *= 2; }
  8. 1) Is a good idea, i'll probably implement it thank you 2) I had the same idea but after testing with friends we had way more fun with pvp disabled, so i'll keep it that way 3) I like it more in a rocket league style rather than fifa Thank you very much for your feedback!
  9. Hello there! Today i'll show you another unique system that i made: the Soccerball! I don't think you need any explanation for that game mode, is as simple as you may think, just kick the ball and score to win! The game mode works like that: 1) Both teams gets equipped with a soccer costume and starts on opposite sides of the field, the ball will spawn in the center 2) Try to score a goal by simply kicking the ball like you would do in any other soccer game 3) After 10 minutes, the team with most goals win Here’s a video showcasing how the game mode works: Special thanks to @ Tatsumaru for releasing the soccer map for free in the forum, it saved me a lot of time! As always, please feel free to leave a feedback!
  10. Dude i wrote that in my answer, item_manager.cpp and item.cpp. CreateItem is the function used to create the item before it appears on the ground, and AlterToMagicITem is called inside CreateItem to add the bonuses before it appears on the ground. Anyway if you want to find out where a function is declared/gets called, you can use ctrl + shift + f to search for it in the whole solution (if you are using visual studio) or you can right click a function and click on find all references (to see where it gets called) or ctrl + left-click on a function call to go to its declaration
  11. I just found this old code in my computer and i decided to share it since i've never used it anyway but it could be useful to someone for new systems. It allows to delay a function call in time instead of calling it instantly. This is how you use it: TimerManager::Instance().Schedule([/* your function's parameters here */]() { /* your function here */ }, /* your delay in milliseconds here */); Since it's old code i won't offer any support on it, also make sure to test it thoroughly if you want to use it in a live server. Here is the download link: [Hidden Content] [Hidden Content]
  12. I don't understand you said you can make them buy the item with your bonus from a shop, which means you already know how to create an item with those bonus right? In this case just put the item vnum in the drop table rather than putting it in an NPC Or if what you are asking for is how to create an item with your decided bonus you can do that in source code, the functions you are looking for are: LPITEM ITEM_MANAGER::CreateItem(DWORD vnum, DWORD count, DWORD id, bool bTryMagic, int iRarePct, bool bSkipSave) (in item_manager.cpp) and void CItem::AlterToMagicItem() (in item.cpp) More specifically you could use something like item->GetOwner()->GetMapIndex() To get the map you are in and decide the bonus based on that. OR if you aren't good in c++ you can create a new item which is the same as the old one but with the added bonus and just use that in your drop table, for example: You have a sword+0 (vnum 10), you create a whole new weapon in your item_proto identical to the sword but with the strong vs animals bonus (vnum 12345), then you change the drop of the boss so that instead of dropping vnum 10 it drops vnum 12345, and it will always have that bonus
  13. You should put this kind of code in your website, just modify the sql code when inserting a new player in db during the sign up phase. So you will have only 1 sql query (insert at sign up), instead of 3 (insert at signup + select and update at login); of course do that for all kind of bonus you want to give players at the start. Also try to avoid using sql queries in your quests as much as possible, especially if player's input is involved. And a last tip, when you are asking for help explain in detail what's wrong/what you need, don't just say "i need help" and dump all your code without explaining what you have tried, the output you get, what you are expecting etc.
  14. Now player's shadow is correctly hidden during prop hunt, thanks again @ Gurgarath:
  15. Thank you very much! You are absolutely right, as you can see in the video i didn't cast a shadow on the real objects for that exact reason and then i forgot to disable players' shadows thanks for noticing!
×
×
  • 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.