• New Horizons on Maelstrom
    Maelstrom New Horizons


    Visit our website www.piratehorizons.com to quickly find download links for the newest versions of our New Horizons mods Beyond New Horizons and Maelstrom New Horizons!

Solved Aztec Curse Revamp

Do you think that the curse of the Aztec gold needs an overhaul?


  • Total voters
    6
  • Poll closed .

Pink Beard

Landlubber
If you think that the curse mechanic given by the Aztec gold coins needs a overhaul then vote yes and help show the developers that this element of gameplay would be interesting, fun and a nice a addition to the mod build.

When I say revamp I mean better/different mechanics, gameplay elements, convenience and things like that.

As it stands right now this to me honestly feels like a last minute thing put into the mod build there are so many tedious little problems that need to be changed like when a crew member dies in a ship boarding and you lose a one of the gold coins because you didn't go and retrieve it from the body why even have them carry it at all? (A side note I think it would be much more convenient if all loot from killed crew members should be automatically placed back into the weapons locker) Should all crew members and yourself be in god mode? everybody was in god mode in the movies. I'm no programmer but there must be a way to make it so that crew members don't carry the coins into battle.

There should also be a skeleton version of every single player model in the game for night time when the curse really shows I know I might be asking a bit too much but something like this would be a really great addition to the mod build

So I created this poll to see if people feel the same way :):):):):):):):):):):):):)
 
You don't want crewmembers to carry coins into battle? Well, that's easy!
Just don't put them in the Weaponslocker and then they won't. ;)

The whole "cursed" game mechanic is triggered by carrying a cursed coin. Any character not carrying a coin is not cursed.
So if your crew doesn't carry them, they're also not cursed.
I know that isn't entirely film-accurate, but it was BY FAR the simplest way to get it working in the game at all.
Plus it gives the player control over which characters they want to curse and which ones they don't.

The curse doesn't trigger Godmode because that seems like too much of a cheat.
Instead, you get +300 HP at night, which is quite substantial, so boardings should definitely become much easier.
Some challenge does remain, which is very much intentional. Otherwise the game would become rather boring. :cheeky

Losing coins when your crewmembers are killed is also very much intentional, because losing coins is exactly what got Barbossa into such a mess prior to the first movie!
It is absolutely possible to make use of the curse. But it isn't without its drawbacks and it isn't without risk either.

I was the one who got it up to the current state and it is functional and does exactly what it is intended to do.
As such, I can confirm that it is neither last-minute nor rushed. A lot of time, care and effort went into getting it working as well as it currently does.
At the very least it is not broken and can offer a fair bit of fun, for those people who like to play with it.

There is surely a lot of room for improvement with this feature, that's for sure. But without anyone to do it, it is going to remain exactly as it is.
So to answer your question: Does it need to be overhauled? Nope, definitely not.
But if anyone wants to improve on its current state, I'll happily point them in the right direction. :doff

There should also be a skeleton version of every single player model in the game for night time when the curse really shows
We don't even have armoured versions for all available models, which would be a far more important addition.
The amount of work required to do all that is astronomic, considering that virtually ANY model in the game can be a player model.
 
R.I.P Pink Beard

Joined today terminates account today :modding

Moderator's note: Removed excessive emoticons. Please do not spam emoticons!
 
Last edited by a moderator:
What did you expect to hear? Changing stuff requires time and effort and manpower.
At least now you know the current state is not by accident, it was intentionally designed to work the way it does.

Small tweaks are possible and I can suggest some to implement in your own game, such as making your crew immortal at night.
That is not too difficult.

Substantially reworking the logic, however, does take a lot of time and effort.
And without someone available and willing to do that, it isn't going to happen.
That may not be what you wanted to hear. But the work doesn't do itself*. :shrug

(* = I really wished it DID do itself! I've got some tremendous ideas of my own AND have the knowledge on how to implement it too.
What I don't have is the time to actually do it all and test it properly. :facepalm )
 
@Pink Beard: If you want actual immortality from being cursed:
1. Open PROGRAM\NK.c using Notepad
2. Find:
Code:
ChangeHPBonus(chr, 300);
Replace with:
Code:
LAi_SetImmortal(chr, true);
3. Find:
Code:
ChangeHPBonus(chr, -300);
Replace with:
Code:
LAi_SetImmortal(chr, false);
That'll make you and your crew properly immortal at night.

You may also be pleased to know that we've been discussing changing the looting mechanic in the game a bit.
If we go through with that, you may end up being able to loot the cursed coins back after your crew got killed.
 
Provided you don't press "Space" once too often and go to the next deck before you've looted everything on this deck. Most annoying, especially if it's the gun deck with four chests and probably a lot of bodies. :modding

Once the curse is in effect, can you still find more coins in chests? Or do they stop appearing until you've lifted the curse? If you've put coins into the weapons locker then it means you went to Isla de Muerte and grabbed some more, which means you want to be cursed, so not being able to get them all back shouldn't be a problem. ;) But in case you want to change your mind, and in case you've lost some coins, it should be possible to get some replacements - eventually. You've just become like the pirates whose coins have been spread throughout the Caribbean and the pirates are now searching for them all...
 
Once the curse is in effect, can you still find more coins in chests? Or do they stop appearing until you've lifted the curse?
They're random items and they remain as random as they always were.
In fact, that is the intended (and ONLY) way of getting them back once you lost them (that doesn't involve "cheating" with the console). :yes

So basically...
If you've put coins into the weapons locker then it means you went to Isla de Muerte and grabbed some more, which means you want to be cursed, so not being able to get them all back shouldn't be a problem. ;) But in case you want to change your mind, and in case you've lost some coins, it should be possible to get some replacements - eventually. You've just become like the pirates whose coins have been spread throughout the Caribbean and the pirates are now searching for them all...
Exactly what you said there. :onya
 
@Pink Beard: If you want actual immortality from being cursed:
1. Open PROGRAM\NK.c using Notepad
2. Find:
Code:
ChangeHPBonus(chr, 300);
Replace with:
Code:
LAi_SetImmortal(chr, true);
3. Find:
Code:
ChangeHPBonus(chr, -300);
Replace with:
Code:
LAi_SetImmortal(chr, false);
That'll make you and your crew properly immortal at night.

You may also be pleased to know that we've been discussing changing the looting mechanic in the game a bit.
If we go through with that, you may end up being able to loot the cursed coins back after your crew got killed.
The only problem with this is when I am indoors (for example below deck on a ship boarding) My self and crew lose the god mode and die.
 
Pink Beard,

I'm willing to help you and give you a way of making the god-mode always on with the curse.

However, I will only spend my time doing that if you first thank Pieter for the time he spent giving you the previous solution. You reacted very poorly to his first post, and now you haven't even thanked him for the work he still did to try to get the result you want. Instead you just ask directly for him to do more work.

So if you want further help, some appreciation and politeness is needed.

And if you do thank him, then you are very welcome to join this community and I am sure everyone will be glad to help you out with any issues that come up!
 
Pink Beard,

I'm willing to help you and give you a way of making the god-mode always on with the curse.

However, I will only spend my time doing that if you first thank Pieter for the time he spent giving you the previous solution. You reacted very poorly to his first post, and now you haven't even thanked him for the work he still did to try to get the result you want. Instead you just ask directly for him to do more work.

So if you want further help, some appreciation and politeness is needed.

And if you do thank him, then you are very welcome to join this community and I am sure everyone will be glad to help you out with any issues that come up!
I didn't mean to sound rude nor offend anyone in any way I was just critiquing the mechanics and suggesting ways in which they could be changed or improved. My first response was more of a joke because Pieter had an answer for all the problems I listed and as I was reading his reply I found myself thinking "Huh I guess that does make sense" So if you didn't see the humor in that post I'm sorry.

Also I'm not a programmer so I have no idea how long it takes to do something like this. (A quote from your post) "Instead you just ask directly for him to do more work." I never meant that and in my defence I had no idea that Pieter was doing any kind of work, I honestly thought that he was just pulling up some muscle memory from his coding so if Pieter was doing work on my behalf I am truly grateful for it.

Once again I honestly never meant to offend anyone perhaps I just didn't explain my criticisms in the correct way. :shrug:shrug:shrug:shrug:shrug

P.S:modding:modding:modding:modding
 
@Pink Beard

Install the attached file to replace your current one (the file Pieter had you edit earlier, in the program folder). Should keep the immortality permanent after it gets set, even in day. Ran a quick test and worked for me.

Welcome to the community! Post feedback and any bug reports you encounter. :)

Let me know how the file works out, and if you end up still needing further help!
 

Attachments

  • NK.c
    197.7 KB · Views: 174
Last edited:
The only problem with this is when I am indoors (for example below deck on a ship boarding) My self and crew lose the god mode and die.
Of course you do. Only cursed in the moonlight, right? ;)
That was the reasoning behind it anyway.

I did have to look up those lines of code I posted before, but thankfully I knew where to look so it took only a few minutes or so. :)
 
Pieter, I made it so that he only has the cursed model under moonlight, but is immortal also during the day. I think that is what he was after, but we'll see if it works for him. :)
 
When I replace the file I get this problem.
houston we have a problem.jpg


When I replaced the new file with the original no problem.

What do I do????????????

:confused::confused::confused::confused::confused:
 
Just a question: Why not just use cheat to turn godmode on when cursed and turn it of when not?
 
Just a question: Why not just use cheat to turn godmode on when cursed and turn it of when not?
It ruins the experience for me I want the game to do it in the background for me, also simply turning god mode on and off doesn't effect crew members.
I also Find it immersion breaking. :onya:onya:onya:onya:onya
 
Pink Beard,

Are you playing the 4.1 WIP beta, or the release? I made that file using the Beta, and it worked for me (even tested the immortality).

I think maybe you are playing the older release?

Anyway, for now, maybe you can just cut and paste the part I edited into your old file. Later, you should try the Beta.

Below is what you should replace with, just find the part that looks similar and replace it with this:

void CheckCharacterCurse(ref chr)
{
float x,y,z;
bool UnCurse = false;
bool DoCurse = false;
if(!CheckAttribute(chr, "location")) return;
ref lcn = &Locations[FindLocation(chr.location)];

DoCurse = Whr_IsNight() && GetAttribute(lcn, "environment.weather") == "true";
if(DoCurse && GetAttribute(lcn, "environment.curse") == "false")
{
DoCurse = false;
}

if(CheckCharacterItem(chr,"cursedcoin") && GetCursedCoinCount()>0)
{
if(!CheckAttribute(chr, "model.old"))
{
if(DoCurse)
{
chr.model.old = chr.model;
if(!CheckAttribute(chr, "model.cursed"))
chr.model.cursed = GetCharacterCursedModel(chr);
SetModelFromID(chr, chr.model.cursed);
LAi_SetImmortal(chr, true);
}
}
else
{
if(!DoCurse)
{
UnCurse = true;
}
}
}
else
{
UnCurse = true;
}
if(CheckAttribute(chr, "model.old") && UnCurse)
{
SetModelFromID(chr, chr.model.old);
DeleteAttribute(chr, "model.old");
}
if(CheckCharacterItem(chr,"cursedcoin") && GetCursedCoinCount()>0)
{
LAi_SetImmortal(chr, true);
}
}
 
Back
Top