Giter Club home page Giter Club logo

everonlife's Introduction

Everon Life

Releases Contributors Discord License MIT

Everon Life RPG Framework

Everon Life is a community-driven open-source Arma Reforger RPG framework.

Our vision is to develop a framework with and for the community. There are almost no restrictions regarding participation. Through our high quality standards, our love for the community and our mature collaboration guidelines, we guarantee full control and transparency.


Warning The game mode is still under heavy development and is not ready to be played yet.

🚀 Features

To be further defined, please checkout our initial milestones here. Additional milestones will follow soon but please feel free to start dicussions with your ideas here.

⚡ Quick start

How to customize your server (including how to set one up)

Quick start guide for server owners using Docker coming soon.

📖 Documentation

Detailed information for server owners and our technical documentation can be found here.

🛠️ Contributing

If you want to contribute to this community effort, please check out our contributor guide and development setup instructions.

everonlife's People

Contributors

12gabriel3 avatar alexhosier avatar arkensor avatar bdrogja avatar benrauzi avatar ebork11 avatar harrisoik avatar jasper-cooper-autorfp avatar kanf avatar luxposeidon avatar marvinvomberg avatar patchrequest avatar phumberdroz avatar pyth3rex avatar rparys avatar saxw avatar thebonbon avatar thurston00 avatar tomboru avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

everonlife's Issues

Trader System

Summarize your proposal
A generic system to buy and sell items in an interaction with an NPC or object

Describe the solution you'd like
It should be a generic system that can be used for NPC traders.
The goal is to use it in most of the farming routes and NPC shops
The items and the prices should be configurable with a config
In the future, an external connection for a dynamic system should be considered when implementing the system

Addition of Sand, Gravel and Cement gathering

Summarize your proposed improvement

The proposed addition of Sand, Gravel, and Cement to add basic resources into the game using existing assets. This would also make the process of creating Concrete possible.

Each individual resource could also be used in other 'runs' for example Glass. Glass could just make use of sand. All of these materials together can create concrete. As below and this would provide us with one mid-game run, Glass and an end-game run Concrete. Sand could also be used potentially to craft fortifications in the future (for rebel roadblocks for example).

Example concrete recipie (multiple inputs should be possible via @thebonbon's work)
image

Screenshot of existing assets used
image

Bags will also be included for each. Each bag will need to be heavy and take up a lot of inventory space so very few can be carried at a time. These are shown below:
image

Best of all this can be put in the game for just 11kb!

Why is this needed?

Explained above:

Describe alternatives you've considered

No response

Add any other context or screenshots about the request here.

No response

Bug mod workshop

What happened?

When I run the scenario from the mode I have this
image
image

What did you expect to happen?

to make it work

How can we reproduce it (as minimally and precisely as possible)?

just do download the mode is by trying the scenario from this one

Anything else we need to know?

EveronLife Version

0.0.13

OS version

# On Linux:
$ cat /etc/os-release
# paste output here
$ uname -a
# paste output here

# On Windows:
C:\> wmic os get Caption, Version, BuildNumber, OSArchitecture
# paste output here

Player Driven Economy

Player Driven Economy would be a cool addition to bring into the trader system, notice

#8 (comment)

Here you see the #/X that X could be optionally changed to only be able to sell as much as is bought by the trader.

I imagine the prices would adjust based on scarcity to a max / min value per item.

Originally posted by @LuxPoseidon in #8 (comment)

This system would be an option for servers to enable, they would have further options like:
Max / Min Sell or Buy Prices per item
Persistent Economy (eco persists past restart or does it reset)
Restart Restock (does the server restock supplies on restart)
Restock Amount (adjust how much items restock by after a restart)

Vehicle garage

Summarize your proposal
The ability to store vehicles in a virtual garage.

Describe the solution you'd like
You can drive the vehicle to a designated area that has visual indicators on where to park a car. Then you have an NPC or other interaction to put the vehicle into a virtual garage. The player can spawn vehicles back out of the garage as well.
If someone needs the vehicle keys and or ownership registration of the vehicle should be configurable. Depends on #36
Also, a limit on how many vehicles one can store.

There should be multiple spawn points at a garage to avoid long queues of people waiting to get out of their car / store their existing vehicles.

Apple can't be Sold *Everon Map*

What happened?

Trying to bring Functions to the Everon Map.
Gather Apple works
Sell Apple Fails

It's taking the Entity out of the Inventory, but it doesn't give M9 Ammo.

What did you expect to happen?

Trade Apple -> Get M9 Ammo

How can we reproduce it (as minimally and precisely as possible)?

Pick up an Apple and try to sell Apple

Anything else we need to know?

EveronLife Version

0.0.12

OS version

Problems installing/using depencies

What happened?

Hy.
I want to mention that the discord link on https://everon.life/ don't work so i am forced to write here.
I try go through your setting up server tutorial.(https://github.com/EveronLife/EveronLife/blob/main/docs/custom_server.md)
I always get stuck when I use the depency EveronLife. When I start Enfusion workbench with EnfusionLife I get a error message (can't Intialize game) message on the right bottom corner and I#m unable to start the world editor because it's greyed out.
Without EveronLife selected I can start World Editor.

On the last few lines in the console log I get this errors:

` SCRIPT : Compiling Game scripts
SCRIPT (E): @"Scripts/Game/Feature/Character/Spawning/EL_RespawnHandlerComponent.c,39": Function 'OnPlayerDisconnected' is marked as override, but there is no function with this name in the base class
SCRIPT (E): @"Scripts/Game/Feature/Resources/EL_DestructibleResourceHitZone.c,20": Overloaded function 'ComputeEffectiveDamage' not compatible
SCRIPT (E): Can't compile "Game" script module!

Scripts/Game/Feature/Character/Spawning/EL_RespawnHandlerComponent.c(39): Function 'OnPlayerDisconnected' is marked as override, but there is no function with this name in the base class
SCRIPT (W): Failed to load
PROFILING : Compiling Game scripts took: 889.997100 ms
ENGINE (E): Unable to initialize a game/gamelib. Some workbench features will not work.
SCRIPT (W): Initializing default GameLib's game class.
INIT : Creating game instance(Game), version 0.9.8.64 built 2023-05-13 18:35:32 UTC.
ENGINE : Game successfully created.
INIT : Reload WB scripts
PROFILING : Reload WB scripts took: 10.990700 ms
DEFAULT : Using thumbnail cache directory: C:/Users/walke/AppData/Local/Temp/Enfusion/Projects/ReforgerLifeAustria/thumbnails
DEFAULT : Using autosave directory: C:/Users/walke/AppData/Local/Temp/Enfusion/Projects/ReforgerLifeAustria/autosaves
PROFILING : Workbench startup took: 7938.441200 ms
`

What did you expect to happen?

Using the world editor as described

How can we reproduce it (as minimally and precisely as possible)?

Get through the setup server instruction until "Creating the world file"

Anything else we need to know?

No response

EveronLife Version

v.0.0.14

OS version

# On Linux:
$ cat /etc/os-release
# paste output here
$ uname -a
# paste output here

# On Windows:
C:\> wmic os get Caption, Version, BuildNumber, OSArchitecture
BuildNumber  Caption                   OSArchitecture  Version
22621        Microsoft Windows 11 Pro  64-Bit          10.0.22621

</details>

Quantity post 0.9.7 enhancements

Summarize your proposed improvement

Switch to full serverside inventory manager from the player instance for serverside item insert for patch 0.9.7

Why is this needed?

Currently, an extra RPC needs to be sent as a workaround for the serverside instance of the inventory manager not accepting actions on non-owned entities. This will be obsolete and reduce both code overhead and increase performance.

Describe alternatives you've considered

No response

Add any other context or screenshots about the request here.

No response

Info for how to give credits correctly.

Find a spot in the documentation or elsewhere on the repository to advise server owners how to correctly give credits according to MIT for when they create mods based on this framework.

Valid ways should include:

  • Notice in the mod description on the workshop.
  • License and attribution notice in the source code of any published workshop item using the framework.

Addition of an Axe

Summarize your proposed improvement

Adding an Axe, a melee-only weapon that can also be used for cutting trees.

Why is this needed?

This will be required for the logging profession mentioned in #74.

Describe alternatives you've considered

Tried different compressions and such but landed on this.

Add any other context or screenshots about the request here.

image

Money System

Summarize your proposal
A system to store the amount of money a player has

Describe the solution you'd like
A central system should hold the amount of money any player has at any given time
The system needs to provide multiple interfaces for server-driven and player-driven transactions
The Amount of money needs to be stored persistently
If money should exist as real items or just a virtual number needs to be defined.

Player HUD

Summarize your proposal
Having an on-screen HUD for basic information like health, stamina, hunger, thirst, and maybe cash you carry.

Describe the solution you'd like
Put little indicator icons in a corner of the screen where they do not annoy people. DayZ did this well with the current GUI design.
image

The hud should be customizable in what is hows and how it looks. So choosing a custom layout file to be displayed is a must in my opinion.

Character & Table slightly in the ground

What happened?

The Apple Traders' parts are under the terrain.

What did you expect to happen?

All objects flat onto terrain.

How can we reproduce it (as minimally and precisely as possible)?

Enter the workbench and load up DebugWorld.ent

Anything else we need to know?

No response

EveronLife Version

OS version

# On Linux:
$ cat /etc/os-release
# paste output here
$ uname -a
# paste output here

# On Windows:
C:\> wmic os get Caption, Version, BuildNumber, OSArchitecture
# paste output here

ATM/Bank System

Summarize your proposal
A system for players to interact with an object or NPC to transfer money from/to their account and to other players

Describe the solution you'd like
The system should provide a GUI for players to

  • Deposit money in their account
  • Withdraw money from their account
  • send money to other players

Potential fees should be implemented as a parameter
The implemented interfaces of the existing Money System should be used

In the future, there could be a difference between a bank NPC and an ATM.
In the future, there could be different types of accounts to store money (and get interest).

Resource Processing

Summarize your proposal
Every life mod has a Resource processing System, therefore we need one too

Describe the solution you'd like
The goal is to have an interaction option that is generically defined.
It should take the "result" and the "input" resource as parameters to be reused for every processing interaction by just changing the parameters.
The size of the reward, input, and the time to process should be parameters.
The Reward should be added to the player inventory directly.
The goal is to have an endless interaction but each x seconds a resource is processed for a smooth but scaling experience

Describe alternatives you've considered
There are multiple ways to implement the endless interaction.

Change wood cutting system to vanilla tree destructible system

Summarize your proposed improvement

Once TreeV2 is implemented the logging system should be reworked to use the new destruction system from TreeV2.

Why is this needed?

TreeV2

  • already has fitting destruction meshes for every tree
  • already breaks into multiple smaller logs
    -> Can be used to add different types of logs / planks

Describe alternatives you've considered

No response

Add any other context or screenshots about the request here.

No response

The axe not shows in game

What happened?

I have a error when open Axe.et in the Enfusion Workbench and the axe not shows in game. I cannot interact with it.
RESOURCES : GetResourceObject @"{9CAC68BA551417A4}Prefabs/Tools/Axe/Axe.et" WORLD : Entity prefab load @"{9CAC68BA551417A4}Prefabs/Tools/Axe/Axe.et" RESOURCES : GetResourceObject @"{F3919A62ADD6123A}Prefabs/Tools/Tool_Base.et" WORLD : Entity prefab load @"{F3919A62ADD6123A}Prefabs/Tools/Tool_Base.et" WORLD (E): Unknown class 'EL_PersistenceComponent' at offset 398(0x18e) WORLD (E): Unknown keyword/data 'm_fExecutionTime' at offset 1377(0x561) WORLD (E): Unknown keyword/data 'm_aCollisionProbesPos' at offset 1404(0x57c) ENTITY : Create entity @"ENTITY:1" ('GenericEntity') at <0.000000 0.000000 0.000000> ENTITY (E): GenericEntity is missing component SignalsManagerComponent as required by component WeaponSoundComponent ENTITY (E): GenericEntity is missing component SignalsManagerComponent as required by component WeaponComponent GetResourceObject @"{9CAC68BA551417A4}Prefabs/Tools/Axe/Axe.et" WORLD : Entity prefab load @"{9CAC68BA551417A4}Prefabs/Tools/Axe/Axe.et" RESOURCES : GetResourceObject @"{F3919A62ADD6123A}Prefabs/Tools/Tool_Base.et" WORLD : Entity prefab load @"{F3919A62ADD6123A}Prefabs/Tools/Tool_Base.et" WORLD (E): Unknown class 'EL_PersistenceComponent' at offset 398(0x18e) WORLD (E): Unknown keyword/data 'm_fExecutionTime' at offset 1377(0x561) WORLD (E): Unknown keyword/data 'm_aCollisionProbesPos' at offset 1404(0x57c) Create entity @"ENTITY:1" ('GenericEntity') at <0.000000 0.000000 0.000000> ENTITY (E): GenericEntity is missing component SignalsManagerComponent as required by component WeaponSoundComponent ENTITY (E): GenericEntity is missing component SignalsManagerComponent as required by component WeaponComponent

What did you expect to happen?

The axe shows in the game.

How can we reproduce it (as minimally and precisely as possible)?

Open axe in the Enfusion Workbench.

Anything else we need to know?

No response

EveronLife Version

ver. 0.0.16

OS version

# On Linux:
$ cat /etc/os-release
# paste output here
$ uname -a
# paste output here

# On Windows:
C:\> wmic os get Caption, Version, BuildNumber, OSArchitecture
# paste output here

SCR_InventoryMenuUI

What happened?

Error in modded SCR_InventoryMenuUI on line 277, project won't compile.

What did you expect to happen?

Project should compile

How can we reproduce it (as minimally and precisely as possible)?

Load project in workbench (latest from git)

Anything else we need to know?

Replace m_pActiveStorageUI with m_pActiveStorageUI.Type()

EveronLife Version

OS version

# On Linux:
$ cat /etc/os-release
# paste output here
$ uname -a
# paste output here

# On Windows:
C:\> wmic os get Caption, Version, BuildNumber, OSArchitecture
# paste output here

Have quantity system impact weight and volume

Summarize your proposed improvement

After https://feedback.bistudio.com/T169255 is fixed the following needs to be done:

  • add weight and volume modifiers to the quantity system
    • Added: Add the ability to adjust the weight and volume of items in the script https://feedback.bistudio.com/T165562
    • Added: SCR_UniversalInventoryStorageComponent::GetMaxLoad function to be able to know how much weight a storage can carry
    • quantity split in full inventory? -> can't happen because split would produce the same weight and volume that was previously already able to be stored.
    • inventory drag and drop multiple source quantity - normally it would check only one item or maybe it uses total weight so it will be ok?
    • Utilize quantity max capacity function to restrict to min of setting and current parent storage volume/weight capacity.
  • use RequestUserLock for quantity operations and remove EL_SetLockState

Draft implementation of adding the additional weight and volume modifiers

//------------------------------------------------------------------------------------------------
bool SetQuantity(int quantity)
{
    IEntity owner = GetOwner();
    if (!EL_ComponentFinder<RplComponent>.Find(owner).IsMaster()) return false;
    if ((quantity < 0) || (quantity > GetMaxQuantity())) return false;

    m_iQuantity = quantity;

    if (quantity == 0)
    {
        SCR_EntityHelper.DeleteEntityAndChildren(GetOwner());
    }
    else
    {
        Replication.BumpMe();
        
        // Add additional volume (-1 for the base weight already on the item)
        InventoryItemComponent invItem = EL_ComponentFinder<InventoryItemComponent>.Find(owner);
        
        float baseWeight = invItem.GetTotalWeight() - invItem.GetAdditionalWeight();
        invItem.SetAdditionalWeight(baseWeight * (quantity - 1));
        
        float baseVolume = invItem.GetTotalVolume() - invItem.GetAdditionalVolume();
        invItem.SetAdditionalVolume(baseVolume * (quantity - 1));
    }

    OnQuantityChanged(); // Call on authority

    return true;
}

Character creation/selection

Is your feature request related to a problem? Please describe.
You need obviosly a starting point to get to the server.

Describe the solution you'd like
The goal is to have a pre-first spawn screen that enables the player to customize his name and appearance.
This should be stored persistently.

Vehicle ownership

Summarize your proposal
Vehicle ownership has two aspects. Having the key (physical item) to unlock and drive the car as well as its registration.

Describe the solution you'd like
Locking and unlocking are important to manage who has access to the inventory and if people can enter and leave the vehicle.
If the vehicle is open but nobody has the car key they should not be able to drive off (unless some short circuit functionality is added later).
The registration allows the police to query who the vehicle owner is so they can stop cars to find stolen ones etc. Vehicle ownership can be registered manually at the city hall or maybe it's automatically when you buy the vehicle. There could be a vehicle ownership transfer function later.

Discord Link Expired

What happened?

Hi! I have been trying to check out your guy's discord, but every link that uses https://discord.gg/everonlife is currently unavailable.
Is this project still going? is the discord still available? I saw that there has not been any commits as of recent, so I am a little skeptical.

What did you expect to happen?

.

How can we reproduce it (as minimally and precisely as possible)?

The link is the same link everywhere, so it's dead on the Reforger Mod Page, the Everon Life website, and its twitter.

Anything else we need to know?

No response

EveronLife Version

OS version

# On Linux:
$ cat /etc/os-release
# paste output here
$ uname -a
# paste output here

# On Windows:
C:\> wmic os get Caption, Version, BuildNumber, OSArchitecture
# paste output here

Addition of Wheat Beer Brewing

Summarize your proposed improvement

I'm proposing the addition of another Profession that would leverage existing assets to create Beer Brewing. This would give us another legal profession for the mid-game.

Gathering
The gathering could be done from specific fields or new fields implemented on the map:
image

Processing
Processing would require Empty Beer Bottles and Wheat. The processor would be the existing Beer Brewing Kettles at a "Brewery" location:
image

Selling
Conceptual only until #8 is added but beers could be sold directly at locations such as restaurants (and of course wherever server owners want).
image

I'm happy to implement this and if #101 is merged I can make this require a Shovel if @12gabriel3 or another modeler are keen on adding another tool to the game.

Why is this needed?

Generally speaking, I'm looking forward to providing the community with many different professions they can use out of the box.

Describe alternatives you've considered

Standard Wheat gathering and selling as Bales of Hay could also be included alongside using the hay bales for brewing beers.
image

Add any other context or screenshots about the request here.

No response

Animated consumeables

Summarize your proposal
Add consumable items to eat and drink to restore different character stats (health, stamina, hunger, thirst)

Describe the solution you'd like
Items for each stat need to be added and if possible with an animation that plays while consuming them (via hold R) as you do with bandages in the vanilla game when injured.
There seems to be some way to add animations for certain in-hand items. Someone should make a proof of concept on how to do this with a simple anim.
image
https://discordapp.com/channels/105462288051380224/976155605100294224/977559573168803871 (official AR discord)

Describe alternatives you've considered
If custom animations are not possible without having a mod incompatibility or they take too long to make the vanilla animation for bandages could be used as a placeholder to get the other parts of this system figured out

Cant Save player Data under Linux

What happened?

If i start my Server and play 2-3 minutes and i try to rejoin server is Crashing and i have test it under Windows and this is Working

What did you expect to happen?

SCRIPT (E): Failed to apply save-data 'EPF_CharacterSaveData:' to character.
Class: 'EL_RespawnSytemComponent'
Function: 'PrepareCharacter'

How can we reproduce it (as minimally and precisely as possible)?

Start Server under Linux wit heveron Life mod the Saving is not working and get Overflow AABB Error

Anything else we need to know?

No response

EveronLife Version

Latest

OS version

# On Linux:
$ cat /etc/os-release
# paste output here
$ uname -a
# paste output here

# On Windows:
C:\> wmic os get Caption, Version, BuildNumber, OSArchitecture
# paste output here

Add how-to on co-authors to the contributors guide

Summarize your proposed improvement

The documentation should be updated to include links to guides on how to add co-authors to a commit. e.g.

https://docs.github.com/en/enterprise-cloud@latest/pull-requests/committing-changes-to-your-project/creating-and-editing-commits/creating-a-commit-with-multiple-authors

https://medium.com/blackode/creating-co-authored-commits-on-the-command-line-git-305ae2af9f73

Why is this needed?

Only GitHub registered members that are associated with a merged commit in the repository are considered contributors. So if someone invested all their time into making concepts or models that someone else implemented and ported their contribution would not count. The person filing the PR should add those who helped significantly to one of the commits they are doing or make an extra one include them in the end if they themselves never pushed anything.

Describe alternatives you've considered

People could be asked to each contribute at least something to be listed, but there are some work results that would never be included in the version control (e.g. design documents, discussion threads, etc).

Add any other context or screenshots about the request here.

No response

Optimize/Redo cash stack asset

Summarize your proposed improvement

Reduce the file size of {773BE5E227A5A9CB}Assets/Items/Currencies/MoneyStack.xob and its textures by possibly remodeling it entirely and giving it a new texture. Also, swap out the visual $100 for $1 bills instead.

Why is this needed?

The more or less "placeholder" asset and its textures are too big, and the texture displays $100 even if you have less, so that's not the most fitting.

Describe alternatives you've considered

No response

Add any other context or screenshots about the request here.

No response

Actions dont work on dropped items

What happened?

Actions dont work on dropped items.

What did you expect to happen?

Actions should still work on dropped items.

How can we reproduce it (as minimally and precisely as possible)?

Drop any EveronLife item (apple, tomato, etc..) that doesn't have a collider on the ground and try to pick it up via action.

This only happens if there is no other collider near the item. E.g it works fine when the item is on a table.
*None of the items currently has a collider.

Anything else we need to know?

Fix: A proper collider should be added to every item.

EveronLife Version

OS version

# On Linux:
$ cat /etc/os-release
# paste output here
$ uname -a
# paste output here

# On Windows:
C:\> wmic os get Caption, Version, BuildNumber, OSArchitecture
# paste output here

Add ability for Npc_Base entities to hold weapons for visual appearance

Summarize your proposed improvement

With the changes introduced in #157 NPCs no longer inherit from the main character to be more lightweight. This also means that the existing weapon loadout setup is missing. I have tried replicating the setup with little success, the NPC becomes invisible when the relevant components are added - indicating that some dependency like a component or maybe animation setup for it is missing.

Somebody will need to investigate this and find a way to be able to configure which primary or secondary weapon an NPC is holding and make sure the holding pose is the "correct" one defined by the weapon's IK pose attributes. Bonus points if equipment like binoculars can also be equipped.

Why is this needed?

It is not super important, but if a server owner wants to make believable NPCs, like an arms dealer, they might want to add a few visual details like a weapon for immersion.

Some prefabs do not inherit from Item_Base

What happened?

These prefabs:

  • Prefabs\Items\Drinks\WaterBottle.et
  • Prefabs\Items\Food\Tomato.et
  • Prefabs\Resources\Mining* (all of them)
    should all inherit from Item_Base.et so their own prefab data only adds additional information/changes instead of a full copy. This is probably my fault, cause I created them wrongly. Can somebody please go through all of them and fix this?

Mining inventory issue

What happened?

When mining sand, gravel and/or cement, items are only given if the player has a bag, and if said bag has enough space/weight to hold it.

What did you expect to happen?

  1. Be able to mine without a bag, if other clothing items have sufficient space/weight to hold the result
  2. Get an error message/hint for unsuccessful gathering with the reason (eg. 'You don't have a bag to carry that sand!')

How can we reproduce it (as minimally and precisely as possible)?

Mine cement, sand or gravel without a bag.

Issue not found on apples and prunes.

Anything else we need to know?

Linked to #2

EveronLife Version

Latest unreleased (04/12/2023)

OS version

C:\> wmic os get Caption, Version, BuildNumber, OSArchitecture
BuildNumber  Caption                       OSArchitecture  Version
22621        Microsoft Windows 11 Famille  64-bit          10.0.22621

Split EL_Utils into different more specific util files

Summarize your proposed improvement

After #169 (Adds InventoryUtils) and #168 are merged:

Organize EL_Utils:
Things like GetStorageOwner should be part of InventoryUtils


From #168 (comment)

Why is this needed?

Better organization

Describe alternatives you've considered

Add any other context or screenshots about the request here.

Visual ground representation of large quantities of items/money

Summarize your proposed improvement

For all quantity component items show visual-only clones of the items to create piles or other visual indicators of "large" amounts. These should probably be local and toggleable through a client setting so weak pcs can choose the "simple" representation.

On the quantity component, different visual stages could be configured with re-useable "arrangement" configs that describe relative offsets of additional "clones" or any supporting visual elements like a box or bag around them if needed. With a few configs for similar-sized items, this should not cause too much additional work to support future items with that either.

Why is this needed?

Following the introduction of cash in #182 one visual enhancement arises from how quantities of items dropped on the ground are represented. Normally in vanilla, each individual item would lay on the ground, but with the virtual quantity, only one "physical" item is visible. Displaying a "pile" of the same item if there are more of it instead of just one would make it easier to judge the number of visible items.

Describe alternatives you've considered

In theory, it would be possible instead of creating multiple instances of the same mesh, to create a "pile" or "many inside a box" mesh that is used for visual representation, but that would require at least two variants of each item.

Add any other context or screenshots about the request here.

An example with cash:
image

image

image

image

" SpawnPoint_LIFE.et " missing from path

What happened?

Everon Life > Prefabs > MP > Spawn > SpawnPoint_Life.et is missing from the filepath per the setup instructions

tried other spawn entities but keep spawning under water?

Any other work around?

What did you expect to happen?

add SpawnPoint_LIFE.et to world

How can we reproduce it (as minimally and precisely as possible)?

download Everon Life on arma reforger mod manager

open a new world on

Anything else we need to know?

Only folders im seeing near that path are

MP > Modes > Roleplay > then the GameModeRoleplay.et file

EveronLife Version

0.0.14

OS version

On Windows:

C:> wmic os get Caption, Version, BuildNumber, OSArchitecture
Edition Windows 10 Home
Version 22H2
Installed on ‎2/‎18/‎2021
OS build 19045.2728
Experience Windows Feature Experience Pack 120.2212.4190.0


</details>

Apply official scripting conventions

Summarize your proposed improvement

As mentioned in #51 the official scripting conventions and organization / coding styles should be applied to all existing scripts.

Why is this needed?

This is part of the official scripting conventions and will keep everything organized and clean.
https://community.bistudio.com/wiki/Arma_Reforger:Scripting:_Conventions

Describe alternatives you've considered

No response

Add any other context or screenshots about the request here.

No response

Mining System

Summarize your proposal
Every Life mod has a Mining System, therefore we need one too

Describe the solution you'd like

The goal is to have an interaction option that is generically defined.
It should take the "result" resource as a parameter, so it can be reused for every kind of farming by just changing the reward.
The size of the reward and the time to farm should be parameters too.

Describe alternatives you've considered
Required Items and or Skills can be implemented at a later stage

Growing system

Summarize your proposal
A generic system to grow plants

Describe the solution you'd like
The goal is to implement a generic system to grow plants at designated spots or on the whole map.
The grow zones should be a parameter to specify designated growing spots or the whole map
The required resource should be a parameter
The time to grow should be a parameter
The "result" should be a parameter in form of a prefab for easy to implement farming on grown plants
The growth tracking of the plant could be implemented with different models or a hud hint

UI system and guidlines

Summarize your proposed improvement

Formation of a UI "taskforce" to work out a modular, simple and future proof UI system. This should make sure that everything added to the project fits together nicely. It needs to look appealing but also consist of a simple but effective, modular structure so we can expand and use it for everything. Some basics are: defined colors, a modular interaction menu, uniform sizes of images/icons/textboxes/etc.

Why is this needed?

In-game menus in Arma 3 are a mess, they almost always look ugly and in today's standarts: obsolete. Creating a solid UI system as a base that we can use for all future updates to build on makes the most sense in the early stages of development. Changing such a system later is going to require quite some work, so why don't do it the right way from the start.

Describe alternatives you've considered

No response

Add any other context or screenshots about the request here.

No response

Vehicle Shop System

Summarize your proposal
A generic system to build different kinds of vehicle shops

Describe the solution you'd like
The available vehicle and their price should be controlled by a config.
The player should see a preview and stats about the vehicle in the shops
In the future, an external connection for a dynamic system should be considered when implementing the system

Improved tool "attack" handling

Summarize your proposed improvement

With the addition of the axe as the first tool in #168 there arises a potential for improvement in how players use it.

A proper animation (and sound setup) for tools should be put in place so that left mouse button uses the tool as a player would normally expect them to.
the

Why is this needed?

Right now they must use MMB to meele with what is essentially a "special" pistol in their hands. This has two downsides:

  1. Left click raises the weapon instead of hitting as one might expect as the control scheme
  2. Meele with pistols etc cause some of the sound graph to trigger, adding ghost sounds on raise and after the melee attack that are confusing.

Describe alternatives you've considered

If a new animation setup is too difficult, we could maybe override/intercept the left mouse button so it:

  1. No longer raises the weapon
  2. Triggers the melee attack instead of "fire" which we do not use.

OR

... we find a way to make tools "fire" with left mouse button and make that useable to hit resources in front of the player. But it should not cause any damage to other entities such as players or vehicles - and we must limit the range of course.

Add any other context or screenshots about the request here.

We need somebody who can dig into these problems and find out what our possibilities are, maybe make a PoC for different options so we can decide how we want to deal with more tools (pickaxe, shovel, etc.) in the future.

Persistence

Summarize your proposal
Storing data persistently is needed for nearly everything, therefore we need it too.

Describe the solution you'd like
The goal is to have a generic way to establish persistence for different components.
It has to provide a public interface for other components to store and load data without any knowledge about the technical implementation.

Describe alternatives you've considered
There are multiple possible technical implementation which have to be discussed.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.