User Stats and learned Engrams

Welcome!

By registering with us, you'll be able to discuss, share and private message with other members of our community.

SignUp Now!
  • Public Service Announcement

    Hey Guest, I’ve got some exciting news to share! 🎉

    Starting this December, I’ll be moving the entire GameServersHub website away from WordPress and rebuilding it in Next.js! This upgrade will bring incredibly faster speeds, smoother performance, and a modern user experience that sets the stage for everything coming next.

    In 2026, GameServersHub will be entering a new era. I’ll be revamping the entire platform from the ground up and launching a brand-new, fully modernized marketplace. It’ll feature a cleaner design, improved functionality, and better tools for both creators and server owners.

    On top of that, development has already started on the GameServerListing project at https://gsl-six.vercel.app/, which is expected to launch in early Q1 2026. This new system will make discovering and managing servers easier than ever before.


    👉 Stay in the loop!
    Join our Discord for behind-the-scenes updates, early previews, and community discussions.

    » Click here to join our Discord! «

    ~ MrOwlSky

Bl4ckSkull666

Well-known member
Joined
Aug 20, 2018
Messages
21
Hello everyone,

can anyone tell me please how i can change the stats which we do update on level up? Like Health, Food, Water, Attack and all other.

And where i can find the already learned Blueprints that we can craft already.


Currently looks my experimental like this:

C++:
//char_component is class UPrimalCharacterStatusComponent*
char_component->ExtraOxygenSpeedStatMultiplierField() = 0.0;
char_component->ExtraFoodConsumptionMultiplierField() = 0.0;
char_component->ExtraWaterConsumptionMultiplierField() = 0.0;
char_component->StaminaRecoveryExtraResourceDecreaseMultiplierField() = 0.0;
char_component->BaseFoodConsumptionRateField() = 0.0;
char_component->BaseWaterConsumptionRateField() = 0.0;

//shooter_player_state is class AShooterPlayerState*
shooter_player_state->ServerEngramItemBlueprintsSetField().Empty(); //<-- This dont work to compile. There comes the Compiler with an error.

Hope everyone can help.
Thanks for reading.

Sincerely,
Bl4ckSkull666
 
Yes , this one i have seen, from there i have already
C++:
shooter_player_state->EngramItemBlueprintsField().Empty();
to remove learned engrams from engram table.

There is too the change of EngramPoints too,

C++:
shooter_player_state->FreeEngramPointsField() = 0;
shooter_player_state->TotalEngramPointsField() = 0;

But i have then already all old learned blueprints to craft it in the inventory and workbench and more... That's my problem.

B.t.w. Changing Level with
C++:
char_component->SetBaseLevel(1, true);
//or
char_component->BaseCharacterLevelField() = 1;
don't work too :-(
 
C++:
character_status->BaseCharacterLevelField() = 1;
character_status->ExtraCharacterLevelField() = 1;
character_status->ServerSyncReplicatedValues();
This seems to work for changing level.
You can change stats by accessing CurrentStatusValuesField and MaxStatusValuesField.
 
Hey Michidu, thanks.
i don't know that i must do the sync request ;-)

But i can't btw i don't know how i can accessing CurrentStatusValuesField and MaxStatusValuesField. I get there a FieldArray<float, 12Ui64>. What the hell is a FieldArray and 12Ui64 class? oO Google don't find that too.... and i'm really new in c++ ;-)

Any Idea how i can remove Blueprints from crafting inventory and other inventories like workbench?
 
12 is the size of an array, because Ark has 12 stats.
Something like this: character_status->CurrentStatusValuesField()()[1] = 100;.
Don't know about engrams yet.
 
Last edited:
Ah ok , easier as i think. Thank you Michidu ;-)

Now anyone know what is the last missed stat ( Marked as Unknown )?

C++:
updatePlayerStats(char_component, 0, 100.0, 100.0); //Health - Default 100
updatePlayerStats(char_component, 1, 100.0, 100.0); //Stamina - Default 100
updatePlayerStats(char_component, 2, 0.0, 200.0); //Dizziness - Default 200
updatePlayerStats(char_component, 3, 100.0, 100.0); //Oxygen - Default 100
updatePlayerStats(char_component, 4, 100.0, 100.0); //Food - Default 100
updatePlayerStats(char_component, 5, 100.0, 100.0); //Water - Default 100
updatePlayerStats(char_component, 6, 0.0, 0.0); //Unknown
updatePlayerStats(char_component, 7, 100.0, 100.0); //Weight - Default 100
updatePlayerStats(char_component, 8, 0.0, 0.0); //Melee Damage - Default 100% - 0.0
updatePlayerStats(char_component, 9, 0.0, 0.0); //Movement Speed - Default 100% - 0.0
updatePlayerStats(char_component, 10, 0.0, 0.0); //Resistence - Default 0
updatePlayerStats(char_component, 11, 0.0, 0.0); //Inventory Crafting - Default 100% - 0.0

void updatePlayerStats(UPrimalCharacterStatusComponent* char_component, int id, float is, float max) {
    char_component->CurrentStatusValuesField()()[id] = is;
    char_component->MaxStatusValuesField()()[id] = max;
}

And as last one, anyone know with which class i can remove craftable Blueprints from Player Inventory and Workbench and more?

Sincerely,
Bl4ckSkull666
 
From Ark Wiki;

0: Health
1: Stamina / Charge Capacity
2: Torpidity
3: Oxygen / Charge Regeneration
4: Food
5: Water
6: Temperature
7: Weight
8: MeleeDamageMultiplier / Charge Emission Range
9: SpeedMultiplier
10: TemperatureFortitude
11: CraftingSpeedMultiplier

Hope this helps.
 
From Ark Wiki;

0: Health
1: Stamina / Charge Capacity
2: Torpidity
3: Oxygen / Charge Regeneration
4: Food
5: Water
6: Temperature
7: Weight
8: MeleeDamageMultiplier / Charge Emission Range
9: SpeedMultiplier
10: TemperatureFortitude
11: CraftingSpeedMultiplier

Hope this helps.
Ah thanks, than it must be the temperature :-)
 
Okay the update of the stats and sync it after change will not work correctly.. After Relogin all old stats + new updated stats are on the character.
 
Ah, that's probably because Ark recalculates stats. Maybe it would be easier to make a new character and give him tribe/structures?
 
Back
Top