Do you know another way to do it? If so, please enlighten me to something less cumbersome..Does the key removal script perform an inventory loop on the entering/exiting PC?
Template Inn for NWN2 basemod?
On indefinite real life hiatus
[22:52] <Veilan> obviously something sinister must be afoot if a DM does not have his social security number in his avatar name!
[22:52] <Veilan> obviously something sinister must be afoot if a DM does not have his social security number in his avatar name!
- ç i p h é r
- Retired
- Posts: 2904
- Joined: Fri Oct 21, 2005 4:12 pm
- Location: US Central (GMT - 6)
What's the purpose of the key removal on enter/exit? Limiting access to the room for a specific duration? I imagine one night stays aren't a problem - just destroy the key on use.
Obviously, inventory loops can be really expensive, which is why I asked. At a minimum, we should only perform them on players that have paid for a room, not all PCs that may come into or out of the inn. But I think it might be best to tie the desired behavior to the door or key itself, if possible.
For extended stay rooms, one idea would be to set an expiration date/time on the key such that when it's used to open the door, the door can destroy the key if it has expired. That way, it can remain harmlessly in a player's inventory however long they want to lug it around. Another idea might be to store room and board information in the database. We can record who has what room in what inn and for how long.
Just my thoughts.
Obviously, inventory loops can be really expensive, which is why I asked. At a minimum, we should only perform them on players that have paid for a room, not all PCs that may come into or out of the inn. But I think it might be best to tie the desired behavior to the door or key itself, if possible.
For extended stay rooms, one idea would be to set an expiration date/time on the key such that when it's used to open the door, the door can destroy the key if it has expired. That way, it can remain harmlessly in a player's inventory however long they want to lug it around. Another idea might be to store room and board information in the database. We can record who has what room in what inn and for how long.
Just my thoughts.
- ç i p h é r
- Retired
- Posts: 2904
- Joined: Fri Oct 21, 2005 4:12 pm
- Location: US Central (GMT - 6)
hmm yeah.. what would be better is if a character could have access to the room for a complete 24hr or 48hr or weekly cycle then the key times out (database integer set on PC) which automatically creates a new one in the inn-keepers inventory.
You could also have the option for the PC to "check-out" of an inn, ie. return their key of their own volition. Could also be a key deposit system so that if you return your key, you get your 1gp back..
The next time you walk into the inn to talk to the inn-keeper if you havent returned your key in time, they could say "Ye'll get nothing from me until you give my key back" to stop immersion breaking key disappearances. If the PC tries to walk toward the rooms the door to the main hall in the inn might be barred to them and a message might pass from the inn-keeper saying "Oi! Ye'll not be going up there until I get my key back and you pay to stay!".
Some ideas at any rate.. I wont be implementing this in the first release as I need someone more database savvy then I to take a look at it.
You could also have the option for the PC to "check-out" of an inn, ie. return their key of their own volition. Could also be a key deposit system so that if you return your key, you get your 1gp back..
The next time you walk into the inn to talk to the inn-keeper if you havent returned your key in time, they could say "Ye'll get nothing from me until you give my key back" to stop immersion breaking key disappearances. If the PC tries to walk toward the rooms the door to the main hall in the inn might be barred to them and a message might pass from the inn-keeper saying "Oi! Ye'll not be going up there until I get my key back and you pay to stay!".
Some ideas at any rate.. I wont be implementing this in the first release as I need someone more database savvy then I to take a look at it.
On indefinite real life hiatus
[22:52] <Veilan> obviously something sinister must be afoot if a DM does not have his social security number in his avatar name!
[22:52] <Veilan> obviously something sinister must be afoot if a DM does not have his social security number in his avatar name!
- ç i p h é r
- Retired
- Posts: 2904
- Joined: Fri Oct 21, 2005 4:12 pm
- Location: US Central (GMT - 6)
- AcadiusLost
- Chosen of Forumamus, God of Forums
- Posts: 5061
- Joined: Tue Oct 19, 2004 8:38 am
- Location: Montara, CA [GMT -8]
- Contact:
In the first post on this I offered some thoughts on persistent inn rooms with thinks like weekly/monthly rates- it would be great to get them standardized and supported in the basemod. However, I see a number of potential problems that will need to be addressed with them.
If keys/rooms will "expire" after a defined amount of in-game time, what happens if the PC logs out in their inn room, and doesn't get to play again until after the time is up? Locked inside? Would someone else have been able to rent the room? I think most of us have become accustomed to playing a somewhat flexible/abstract passage of time in ALFA- does it damage immursion if we rent an inn room for a night or two ingame, then get a phone call and log out to go take care of something, return to find the room already "expired"? Alternatives would be renting rooms by real-life days, weeks, or months- though how does that get worked into an IC convo with the inkeeper NPC? In many cases players may be renting a room, then logging off there for the night (nice natural breakpoint for a session)- but if they're not playing again until the next night, that's nearly a tenday's worth of room and board we're fiating to the time compression.
All I can imagine is that players will rent the rooms to use the rest trigger (120 sec), then turn in the key and log out from somewhere else- to me this isn't as desirable from an immursion perspective.
The single-instance keys that return to the merchant when the room "renter" leaves are a simple method of room control that don't rely on the database at all- I'd recommend them as a temporary solution, perhaps- until we can get the bugs worked out with persistency through NWNx4/SQL.
If keys/rooms will "expire" after a defined amount of in-game time, what happens if the PC logs out in their inn room, and doesn't get to play again until after the time is up? Locked inside? Would someone else have been able to rent the room? I think most of us have become accustomed to playing a somewhat flexible/abstract passage of time in ALFA- does it damage immursion if we rent an inn room for a night or two ingame, then get a phone call and log out to go take care of something, return to find the room already "expired"? Alternatives would be renting rooms by real-life days, weeks, or months- though how does that get worked into an IC convo with the inkeeper NPC? In many cases players may be renting a room, then logging off there for the night (nice natural breakpoint for a session)- but if they're not playing again until the next night, that's nearly a tenday's worth of room and board we're fiating to the time compression.
All I can imagine is that players will rent the rooms to use the rest trigger (120 sec), then turn in the key and log out from somewhere else- to me this isn't as desirable from an immursion perspective.
The single-instance keys that return to the merchant when the room "renter" leaves are a simple method of room control that don't rely on the database at all- I'd recommend them as a temporary solution, perhaps- until we can get the bugs worked out with persistency through NWNx4/SQL.
Sorry for the absence.. real life has been extremely busy. No rest for the wicked.
I'm nearly ready to release this I just have one problem. Strangely, I cant get the scripts to recreate the key in the merchant waypoint's inventory when the PC leaves the inn..
Any assistance on this would be appreciated..
- Dez
I'm nearly ready to release this I just have one problem. Strangely, I cant get the scripts to recreate the key in the merchant waypoint's inventory when the PC leaves the inn..
Any assistance on this would be appreciated..
- Dez
On indefinite real life hiatus
[22:52] <Veilan> obviously something sinister must be afoot if a DM does not have his social security number in his avatar name!
[22:52] <Veilan> obviously something sinister must be afoot if a DM does not have his social security number in his avatar name!
- AcadiusLost
- Chosen of Forumamus, God of Forums
- Posts: 5061
- Joined: Tue Oct 19, 2004 8:38 am
- Location: Montara, CA [GMT -8]
- Contact:
Having had something like this happen to me back in the days Duck was a DM, I can fully appreciate this concern. This could also happen if a group of PCs congregate in an inn room for whatever reason, and once PC crashes or has to leave. Since I'm not a scripter, I do not know if either of the following proposals are feasible, but two possible solutions are:AcadiusLost wrote:If keys/rooms will "expire" after a defined amount of in-game time, what happens if the PC logs out in their inn room, and doesn't get to play again until after the time is up? Locked inside? Would someone else have been able to rent the room?
1. Implement a system in which a PC logging out from within an inn room logs in on the other side of the door. This is probably more trouble than it's worth, and could present problems if the PC dropped something inside the room and can no longer return to it.
2. Make inn room doors appear locked from one side only -- the hallway side, of course. This eliminates the expiring key problem, and also gives a nod to realism, as the PC can always turn the latch from inside the room. Perhaps this could be accomplished via dialogue after clicking the door. Since the door is a single object, determining what side the opener was on would presumably be difficult, however.