Jump to content

Leaderboard


Popular Content

Showing content with the highest reputation on 07/28/2020 in all areas

  1. 1 point
    In this spotlight you can see what the players have built on our server.
  2. 1 point
    Dear Seasonal Community v1.13-pre.1 can now be downloaded through the account manager Many of you requested it in the last poll, and we'll deliver. Here is the very first public (preview) release of the seasons update! Turns it its not that easy to build good season simulation - this is the end result of the cumulative work that spanned several updates - all the way back to version 1.9 where we added realistic climate bands, food preservation in 1.10 and snow and rainfall in v1.12. Please notice 1. This is a bug-ridden preview release, mostly intended for modders and very adventurous players. You will encounter major bugs, incomplete features, performance issues and crashes. 2. New "pre" updates will only be posted in discord #news and not on the blog. A new v1.13 blog post will come when the first release candidate is ready. Screenshots, Gifs, Videos Seasons! Seasonal foliage and temperature dependent plant growth Snow accumulates in winter and melts during summer (WIP) Fine detail ambient occlusion with SSAO, for high end users Specular sunlight reflections on water surfaces, more foamy water New Mechanical power blocks - the large gear and a clutch Flowerpot and Planter rework, the planted flowers and plants now have new models and different models depending on the size of the pot. Chute rework. Added many more chute block variants, including an archimedes screw Experimental immersive first person mode The world map is now persistent, as in, it will no longer unload previously discovered areas Lots of new flora for hot and wet climates: Fern trees, crotons and rafflesias Modders are no longer limited to cubic shapes, here's some pumpkins modded in by Novocain, which he modeled in Blender Game updates Feature: Seasons Seasonal foliage - pines will have different shades of green, blueberries will turn bright red and maples will have fancy yellow leaves during fall Snow accumulation - many blocks can now be covered in snow, such as loose stones, tall grass, saplings, flowers, slabs, stairs and fences - even in unloaded chunks (WIP) Realistic, season-, latitude- and season-aware day/night cycles Correct hemisphere simulation. If you travel far enough south, the seasons will be flipped, i.e. Winter in July Latitude and day/night-aware temperature simulation. Temperature now affects crop growth and the precipitation system. Reeds, Papyrus, Mushrooms and berry bushes will also stop growing during freezing temperatures Feature: Increased graphical fidelty SSAO Shader - greatly improves the shading of blocks and creatures when enabled Specular sunlight reflections on water surfaces New models for knife, spear, axe, hoe, shovel and arrows Trader Outfit bonanza: They now wear a wide range of accessories Water is now more foamy Bamboo is now also randomly rotated Feature: Experimental immersive first person mode. Makes it so you can see your own body also in the first person camera mode Feature: Mechanical Power updates Many bugs related to it were fixed New block: The clutch to disengage parts from a powertrain New block: A large gear that translates torque<=>speed and has multiple connectors for small gears (WIP) Feature: Map persistence. Clients now store already visited map pieces locally Feature: Flowerpot/planter rework. You can now plant bamboo, reeds, papyrus, crotons in them. Also several planted models received some updates. The pot and planter is now also ready to receive new plant-in-pot growing mechanics in the future. Feature: Wide ranging performance optimizations. As usual we always try to counter the additional performance cost of new features by squeezing out ever more extra frames from the game engine: Greatly reduced block update lag when building with hundreds of chiseled blocks. Reading block entities were a bottleneck, they can now be accessed much more quickly by the game engine (technical info: moved from an array to a dict) Major entity optimization - signifcantly reduced the cost of having many entities loaded at the same time. (technical info: Player, Entity and Item Physics simulation should now run independently from the physics simulation tps (GlobalConstants.PhysicsFrameTime). This allows us to reduce the physics sim tps from 60 to 30, effectively doubling physics sim capacity. The physics simulation is one of the most costly cpu side operations for the client and server, so this should give a nice performance boost. Probably introduces some new physics oddities though.) Several performance leaks fixed for long running worlds. A server with many players that runs for several days eventually ended up very laggy. (technical info: 1. farmland and berry bushes were not properly unloaded, causing creatures searching for food looking through an every increasing list of potential food sources, 2. the entity partitioning system did not seem to properly unload entities, again increasing search costs) Feature: New ram optimization mode: "Aggressively optimize". Should theoretically save about 200 MB ram. In this mode the game No longer preloads all sound files, but only loads them on-demand No longer keeps shape files in memory, but unloads them after initial tesselation and loads them back in on-demand Reduces max particles by half Reduces actively held chunk data Unused music files get unloaded Feature: Survival handbook improvements Tries to yield more intelligent results when searching Added category tabs Added ".reload handbook" command to more efficiently trial&error handbook entries for modders Added Survival Guide, Progression guide and Mining guide Removed some items that do not belong in the handbook Added survival guide button to the escape menu Feature: More item transport blocks Added Archimedes screw for vertical item transport. New 3way, T, straight and cross chutes for horizontal and splitting item transport Feature: Jungle flora updates Added fern trees Added rafflessia flowers Added croton plants Jungles should now be more forested and grassier Feature: New world customization options Added Polar-equator distance: Lets you define how far you have to travel north or south to reach the pole or the equator Added starting climate: At long last, you can now now select in which climate band you want to spawn Added season switch: Lets you disable the passing of seasons Added global forestation modifier: Change the amount of forest your world has Microblock chiseling is now enabled by default, but only for wood and stone material blocks. Added new config option to enable it for most cubic blocks. Feature: Added new rain sound when in forests Feature: Beds are now bouncy Feature: Discovery of lore items now more epic with a gong and announcement message Feature: Added toggle sprint setting. Lets you press down the sprint button only once to activate instead of needing to hold it down continuously Feature: Improved remapper assistant. The tool that helps you upgrade your world to a new version just got easier to use. It now also offers to back up your world and after the remapping is completed, single player worlds will automatically reload Feature: Rotatable anvils Tweak: World Edit Gui Import Tool: Added 2 buttons to rotate the selection CW or CCW Tweak: Updated language files. Added dutch translations \o/ Tweak: Made the slope test block rotatable just because. Tweak: Added "Open Logs Folder" to the launching/connecting server screen Tweak: /serverconfig setspawnhere now prints the coordinates in the correct notation Tweak: Lowered the sun a bit, makes sunsets and sunrises look less awkward with the sun still up but everything dark already Tweak: The Handbook browse history now also remembers the scroll position Tweak: Disabled save game setting "AllowCreativeMode" because its confusing, and cannot be enabled again, so it trips up people. Creative mode is now always allowed given the right privileges Tweak: Increased the flee detection range for most animals, therefore when sneaking this range is reduced by 40% Tweak: allowCoordinateHud worldconfig now also affects the coordinates in the debug screen Tweak: Journal Entries are now translatable Tweak: Updated /time command Now displays the date in a day.month.year format Added subcommand /time setmonth [1..12] or /time setmonth [jan..dec] Tweak: Updated weather related commands Can now do /weather setprecip [0..1 or auto] to set set a permanent override precipitation level Can now do /snowaccum [on|off] do toggle snow accumulation Can now do /snowaccum here [0..4] to test snow accumulation for the current chunk Tweak: Farmland now internally works with a moisture level instead of a watered yes/no value. This will allow future updates to the crop growth mechanic. Tweak: Changed how precipitation works. It is no longer a separate weather pattern, but a function of time that is overlaid onto cloud patterns. This was necessary to simulate snow accumulation efficiently, but also would allow for precise weather forecasts in the future or for modders. Fixed: Scrollbar issues in the mods manager at non-8 gui scales Fixed: Vertical jitter when sprinting Fixed: Elusive orange lupine not being generated Fixed: Should fix the game crashing when using a completely empty json block model Fixed: Satiety draining while in creative mode Fixed: Plank stairs and slabs texture not aligning correctly with one another Fixed: Water was no longer having any wavy motion Fixed: Should fix a crashing issue when placing troughs in rare cases Fixed: Curable/Perishable info texts were not translatable Fixed: Disabling the survival mod made a creative world not start Fixed: "Ready to mate" info on dead animals Fixed: Flowing water deleting torch holder blocks Fixed: Throwing spears pulled other spears from distant chest inventories Fixed: /admin landfree removed the admins claims instead of claims of the supplied player name Fixed: Various typos fixed in-game and in code Fixed: Constructing pile of boards dupe bug Fixed: Rare crash related to the particle system (by making chisel blocks a bit more thread safe) Fixed: .reload shapes broke all creature animations (no animations were playing anymore) Fixed: Server throwing exception when typing "{test}" into the console Fixed: A charcoal lit text was not translatable Fixed: Hoppers no longer push items into the quern output slot Fixed: /time calendarspeedmul not sent to client causing sun jitter. Also was not saved to the savegame. Fixed: Various open file/folder buttons crashing on linux Fixed: Scythe showing as a usable tool instead of knifes on several blocks Fixed: Admin survival players non able to break their own reinforced blocks Fixed: Should fixed chiseled blocks not supporting non 32x32 textures Fixed: Reinforced lanterns broke on first attempt Fixed: Windows Font DPI Setting no longer messes with the in-game fonts API Updates Feature: Completed implementation of .obj and .gltf loader. Blocks and Items can now also use .obj or .gltf files for their models Feature: Added harmony lib to improve mod support - you can use it to patch native code, see also official docs Feature: Added api.Event.OnGetClimate event. Used by the survival mod to adjust the already existing worldgen based temperature value to the current season, latitude and daytime dependencies Feature: New event IngameDiscovery displays large centered text in a fancy font Feature: Added a side independent network api. Added a .GetChannel() method. This simplifies network setup and reduces code repetition. See Example code below Feature: Added GameMath.CyclicValueDistance() Feature: Added zOffset per shape element capability (not yet editable in VSMC) Tweak: Dropped obfuscation on 35k client code Tweak: Add RequiredOnServer property to ModInfo Tweak: Allow code mods without ModSystems to be loaded as long as they have a ModInfo attribute Tweak: New animation meta data property "holdEyePosAfterEasein". Can be used to freeze the camera in place in the immersive fp mode. Added that for smithing and knapping so far. Tweak: Added a globally unique identifier for savegames. (savegame.SavegameIdentifier) Tweak: Added 'SQLiteDB' to the api, a basic helper class to set up a sqlite database, check out MapDB in the essentials mod for an example use case Tweak: Renamed IBlockTextureLocationDictionary to ITextureLocationDictionary Refactor: Renamed IntMap to IntDataMap2D Refactor: IGameCalendar.Season is now GetSeason(), as the season now depends on the hemisphere at given location Refactor: Some renaming of the EnumServerRunPhase values, but left old ones in as [Obsolete] for now. Added one new server runphase thats just before loading the first spawn chunks Refactor: Removed Api.World.Calendar.DayLightStrength on the server side. Instead, retrieve the daylight strength with .GetDayLightStrength(double x, double z). The day light strength propery on the client side still exists, but now is the day light strength at the players position. Refactor: IBlockAccessor.GetClimateAt() now has a new arg "EnumGetClimateMode mode" to retrieve the current temperature values Refactor: GameMath.FastSqrt is now obsolete. Apparently it is slower than plain Math.Sqrt *facepalm* Refactor: world.RayTraceForSelection() now has an additional arg take accept an optional entity filter. If you use this method, you might want to add (e) => e.IsInteractable as entity filter, as this was the previous behavior Refactor: entity.EyeHeight is now entity.LocalEyePos Refactor: entity.LocalPos is now called entity.SidedPos Refactor: sapi.WorldManager.LoadChunkColumnFast is now called sapi.WorldManager.LoadChunkColumnPriority Refactor: Renamed BlockMPBase.HasConnectorAt to HasMechPowerConnectorAt (only relevant for modded in mechanical power blocks) Refactor: Cleaned up paths and naming on a lot of block shape files Major Client-Side Refactor: meshdata.Rgba2 is no more. No longer needed as climate tint is now sampled by the shader instead of baked into the vertices. Consequently: new MeshData() now takes one argument less. The standard shader no longer has the prog.RgbaBlockIn property Block.TintIndex is gone, replaced by Block.ClimateColorMap and Block.SeasonColorMap The VS ModelCreator no longer has a tint index field, replaced by 2 text fields for the climate color map and season map. Be sure to open the new shape files with the new editor. capi.ApplyColorTintOnRgba(tintIndex, ...) is now capi.World.ApplyColorMapOnRgba(ClimateColorMap, SeasonColorMap, ...) Any meshes that get added to a chunk mesh (e.g. by block entities) require meshdata.SeasonColorMapIds and meshdata.ClimateColorMapIds to be non-null (initialize with verticescount/4 zeros if no color mapping is needed) capi.Tesselator.TesselateShape() no longer takes 1 tint index, but 2 ints a seasonColorMapId and climateColorMapId capi.Render.PreparedStandardShader() now accepts a Vec3f to pass on a color multiplier capi.Render.AllocateEmptyMesh() no longer accepts "int rgba2Size" meshData.XyzFaces is now a byte array instead of an int array to save ram meshData.Renderpasses is now a short array instead of an int array to save ram meshData.XyzFaces now need to hold the face index plus 1 (0 for no face, 1 for north, 2 for east, etc...) Added api.RegisterColorMap() to register a color map that is (optionally) inserted into the block texture atlas, added config/colormaps.json for json loading of color maps. The shaders explicits attrib locations for several shaders shifted by -1 (since we no longer upload Rgba2 data) Fixed: The Array Extension .RemoveEntry<T>() garbled the resulting array when removal index was 0 Fixed: Using <font> in Richtext caused the text to loose its orientation Fixed: Renamed Block.OnNeighourBlockChange() to Block.OnNeighbourBlockChange(), and this method is now also called client-side Fixed: block type property RandomizeRotations ignoring the RandomizeAxes property Fixed: Crafting recipes that referenced blocks/items that existed but were remapped did not log an error New simplified Network api sample code, in this case sending custom data to any connecting player: public override void Start(ICoreAPI api) { api.Network.RegisterChannel("latitudedata").RegisterMessageType(typeof(LatitudeData)); } public override void StartClientSide(ICoreClientAPI api) { api.Network.GetChannel("latitudedata").SetMessageHandler<LatitudeData>(onLatitudeDataReceived); } public override void StartServerSide(ICoreServerAPI api) { api.Event.PlayerJoin += (plr) => { api.Network.GetChannel("latitudedata").SendPacket(latdata, plr); }; }
  • Newsletter

    Want to keep up to date with all our latest news and information?
    Sign Up
×
×
  • 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.