Jump to content

Omega Haxors

Vintarian
  • Posts

    203
  • Joined

  • Last visited

  • Days Won

    10

Everything posted by Omega Haxors

  1. I'm axing the class support, at least for now. For the sake of actually shipping in a reasonable time, it will simply be a command. Classes are new, undocumented, and buggy as hell. Needs more time in the oven. The effects of Phototropic, Sugar Rush, and Heavy will apply when using the command as those are all calculated internally within the mod itself.
  2. Most of it was spent getting the stupid Dev Environment to actually function. Compiler errors are the actual worst.
  3. Photosynthesis code finished, and it feels great. I had a chance to test the default config, and I feel like it's exactly where it needs to be. It's impossible to camp light sources because your satiation will drop slightly faster than it restores, but if you play the game normally you shouldn't have any problem keeping it topped up.
  4. If you need any help implementing this or want to know what something does, feel free to ask.
  5. Time for the real code (as used in my mod) public float GetBlockLightAtEntity(Entity entity) { IBlockAccessor blocks = entity.World.BlockAccessor; float blocklight = 0; //init the variable SyncedEntityPos pos = entity.Pos; //init the location BlockPos blockpos = pos.AsBlockPos; //convert to block format blocklight = blocks.GetLightLevel(blockpos,EnumLightLevelType.OnlyBlockLight); //get the block light value at the location blocklight = blocklight / 22; //to convert to % value return blocklight; //Note: Non-sunlight sources are 1/3rd as strong, so be sure to divide them by 3 for apparant values } public float GetSunLightAtEntity(Entity entity, bool accountfordaytime = false) //comes with an optional variable to account for daylight { IBlockAccessor blocks = entity.World.BlockAccessor; float sunlight = 0; SyncedEntityPos pos = entity.Pos; BlockPos blockpos = pos.AsBlockPos; sunlight = blocks.GetLightLevel(blockpos,EnumLightLevelType.OnlySunLight); //get the sun light value at the location sunlight = sunlight / 22; if(accountfordaytime) //if true, calculations account for time as well { float hour = entity.World.Calendar.HourOfDay; hour = hour - 12; //offset time (noon is center) if(hour < 0){hour = hour * -1;}//negative is now positive hour = hour * 0.1666f; //convert to % if(hour > 1){hour = 1;} //any value over 100% is 100% hour = 1 - hour; //flips % value (75% -> 25%) sunlight = sunlight * hour; //reduce light level% by hour% bool israining = false; //Vintagestory.GameContent.GameEffectsPacket.RainAndFogActive; //it's broken. For now, rain will not affect light level. if(israining) { sunlight = sunlight * 0.9f; //10% less } } return sunlight; //as a % value, with 100% = a value of 22 } public float GetEntityLightAtEntity(Entity entity) //gets the Entity Light produced by the entity, such as when a player holds a torch or a spider lights up { float entitylight = 0; if(entity.LightHsv != null) { entitylight = Convert.ToSingle(entity.LightHsv.GetValue(2)); //annoying workaround to convert object to float } entitylight = entitylight / 22; return entitylight; } public float GetEntityLightAroundEntity(Entity centerentity) //gets the strongest Entity Light produced by nearby entities. This can include the center entity. { float strongestentitylight = 0; Entity[] entities = centerentity.World.GetEntitiesAround(centerentity.Pos.XYZ,9,9); foreach (Entity entity in entities) { float entitylight = 0; if(entity.LightHsv != null) //crashes if you don't { entitylight = Convert.ToSingle(entity.LightHsv.GetValue(2)); //annoying workaround to convert object to float entitylight = entitylight - Convert.ToSingle(centerentity.Pos.DistanceTo(entity.Pos.XYZ)); //calculate light fall-off over distance strongestentitylight = Math.Max(strongestentitylight,entitylight); //pick the strongest light source } strongestentitylight = strongestentitylight / 22; } return strongestentitylight; }
  6. Basic infrastructure has been established. Upon logging in, the player is granted with some custom data which will be used to apply effects. A command will also be included which will allow any class to activate Prototrophy, for those who would rather use another class (essentially allowing it to be used as a cheat mod)
  7. Instead of each trait being an individual attribute, instead split classes up into various stats. Naturally the Commoner will have stats perfect down the middle, but other classes may have more or less in a stat. Each stat usually has a downside that goes alongside it, but in cases where the upside can also be a detriment this won't be the case. Strength: Increases melee damage, bow draw strength, break speed, reduces armor speed downside, but also increases hunger draw Savage: Increases damage output but increases damage taken Speed: Increases movement speed but also increases hunger draw slightly Stealth: Reduces range in which animals and monsters can track you Sight: At lower levels you are nearsighted and at high levels you are farsighted Scavenge: Improves ability to find things in the wild at the cost of lower drops from organized harvests Steal: Gained increased drops from looting but shopkeepers trust you less (worse/less trades) Stature: Linearly increases your max health but lowers health regen speed Specialization: Class-specific unlocks go here, so any traits that don't fit into the previous stats. Stats can be added/removed/tweaked over time and retroactively modifies the existing classes.
  8. A 'meme' that took over a government building, but that's the last I'm going to speak on this to avoid derailing the thread more than the atrocious (and potentially malicious) choice of title already has.
  9. The minigame related to glassblowing would probably be really fun too.
  10. The topic of food spoilage in multiplayer has been debated until all involved were blue in the face. Time to fix that. Simply: When you log off with food in your inventory, the first 12 food items (left to right, bottom to top) get stored into a special vessel with an extremely low spoil rate. To prevent abuse, only the owner (or an admin/player in creative) can move or otherwise interact with the vessel and it will disappear minutes after the player logs back in. Those who are not the player will only see a spark. This also serves as an indicator to where a player has logged off, so you don't accidentally (or do ""accidentally"") leave blocks around it.
  11. So far I have managed to get the dev environment set up. I am now working on setting up the code required for the class to work properly. Since the API documentation is really bad, I'm relying mostly on help that I can get from the forums and discord.
  12. Just a few bugs I noticed while testing. Arrow accuracy seems really inconsistent when you're prone, and when eating/using a bow you tend to use the dodge ability unwillingly.
  13. Recycling tools in order to restore their durability seems like a good system. You would still have to go through the process of reforging them, but you're not losing any metal in the process. Instead of losing the tool at 0 durability, it just gets rendered useless then you can take the stick off and reforge the head. As for the stone tools? It makes sense for those to just have the head shatter into dust, leaving behind the stick. We take for granted just how abundant metal and sticks are in the game, but on some configs and especially in multiplayer, finding them is way more frustrating than it needs to be and it would be nice if you could just recycle what you already have. It would make the tool durability system a lot less frustrating than it already is. EDIT: Come to think of it, metal tools kind of do have ridiculously long durability bars. It would be really unbalanced to lower them in the current state, but if a recycling system was put in place it would make sense to dramatically reduce the metal durability and allow reforges. Maybe for lower metals like copper this isn't such a big deal, but for steel and up you're talking about days worth of processing just to obtain those precious steel ingots. Right now all you can do is turn down the durability in the config, but then that makes stone tools so ridiculously brittle that a spear won't even last for 1 single surface drifter.
  14. I don't need to read any further. Whatever it is you're going to say after that, I wholeheartedly support it. Especially the point about Critical Hits.
  15. Potential for Ability Fragments as well. Reading them unlocks a new ability which will enhance your game somewhat. Maybe you might find a spell which allows you to fly at the cost of stability. Maybe a new smithing technique. New Character trait.
  16. Basically work like lore fragments which unlock nice/useful items into your survival handbook that would allow you to craft otherwise uncraftable items. Give you more of an incentive to go exploring while adding the potential to make new items which would be overpowered in the early game but balanced later on.
  17. Fastest method of obtaining twine is to mantle grind. Dig a hole to mantle, create a large area and kill the nightmare drifters that spawn. Nightmare drifters have a 100% drop rate of the stuff so you'll be minted in no time.
  18. While you shouldn't be doing this anyway due to the -10% less loot modifier, it's actually a LOT worse than advertised. You'll crack open lines upon lines of urns and get nothing except some gears. Save em for the malefactors.
  19. It's an opinion poll, pick which one you personally think is the best based on how you play.
  20. This is actually why I voted against the glider in that one poll. The glider from minecraft taught me that gliders in that game = nerd poles everywhere
  21. I actually really like this. The textbook is overwhelming and filled with spam. If there were ways of filtering it, that would be super awesome. EDIT: To clarify, I think it should be split into the various stages of development. Like, hide away platebodies if I haven't even seen an anvil.
  22. Fun fact, when I first made the VS armor rebalance mod, I actually had Ty tell me to nerf it because it was too overpowered. All I did was port the stats over from the old system into the new one.
  23. I wanna gauge people's opinions on what the best armor in the game is. Make it subjective, and justify your decision with a comment. EDIT: Here is the wikipedia page if you wanna see stats https://wiki.vintagestory.at/index.php?title=Armor Personally I voted for Hard Leather because the lack of a downside compliments my trade routes very well. I don't normally need to deal with combat (aside the odd wolf) so speed is the most important thing to me.
×
×
  • Create New...

Important Information

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.