Jump to content

[LE] Differentiate interior cells


madrum

Recommended Posts

Right now I'm using keywords like LocTypeDungeon, LocTypeHouse, LocSetCave etc. to identify what the interior cell is. However not every interior cells location will have useful keywords set.

 

I need to differentiate between:

  • House-like cells
  • Dungeon/Temple/Mine/Cave etc. cells
  • Ice cave cells

Anyone knows a better way?

Link to comment
Share on other sites

Those keywords I believe are used by the Radiant Story system so that it knows what places it can send the player to. Unless they have keywords set(and there is about 230 in the base game that does, which is far less than the total locations, and certainly doesn't cover all the dungeons), there's no way to differentiate between them, I'm afraid. I mean you could queue every last cell form ID and compare but that is tedious at best.

 

Edit: I've tried this before, but it was for dungeons.

Edited by Rasikko
Link to comment
Share on other sites

Unless you want to attach your Cells into the Skyrim Radiant Story system you only need to set Location and Location Ref Type if you need them for quests you are creating. For example if you are using Story Manager or want things to happen if the player is in a type of place (eg LocTypeInn).

Link to comment
Share on other sites

Those keywords I believe are used by the Radiant Story system so that it knows what places it can send the player to. Unless they have keywords set(and there is about 230 in the base game that does, which is far less than the total locations, and certainly doesn't cover all the dungeons), there's no way to differentiate between them, I'm afraid. I mean you could queue every last cell form ID and compare but that is tedious at best.

 

Edit: I've tried this before, but it was for dungeons.

 

Yes, I was afraid that id checking is the only reliable way. But that doesn't even work, when mods add new locations. Except I include them as well..

 

Unless you want to attach your Cells into the Skyrim Radiant Story system you only need to set Location and Location Ref Type if you need them for quests you are creating. For example if you are using Story Manager or want things to happen if the player is in a type of place (eg LocTypeInn).

No, I don't create own cells or quests, my goal is to have some reliable and generic way to detect every interior cell in the game correcty. I only need a differentiation in a papyrus script.

Edited by madrum
Link to comment
Share on other sites

It takes a bit of work, and it's not perfect, but if you have certain specific game objects (architecture, cave tunnels, whatever) that you associate with the different types of locations, you can search for them with FindClosestReferenceOfTypeFromRef with a very large radius to make sure you find what you need, and using the player as arCenter. Run the function whenever the player changes cell, and should be good to go. So for example, when entering an ice cave, you could check for the LocSetCave/LocTypeDungeon, and then set up a while loop to search for every single type of Ice Cave room/tunnel object that exists. If the Find function returns anything, the player is in an ice cave.

Link to comment
Share on other sites

  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...