Перейти к содержимому

Фотография

Inquiry: feasibility of misc. batch processes (Spelljammer sphere building)


  • Пожалуйста, авторизуйтесь, чтобы ответить
3 ответов в этой теме

#1
Boozehound Blue

Boozehound Blue
  • Members
  • 64 сообщений
In general, I'd like to automate the process of duplicating template areas, blueprints, vfxs and 'painting' them based on data in an sqlite database. (Project outline update here) The gist is to build something akin to a solar system blindly.

The build process (manual):
  • Determine area size (based on outermost object within sphere) and duplicate area template (flat terrain with perimeter area transitions and a vfx grid)
  • Locate primary (center) object and orbits of children bodies (i.e. planets)
  • Create circular/eliptical walkwaypoints for each orbit
  • Copy blueprint templates for non-unique bodies (sphere, cube, etc.) Modify classification to organize.
  • Determine reasonable scale for bodies
  • Modify template texture swap vfx for non-unique bodies, save as and apply. (Texture in db)
  • Assign additional properties to bodies (convo, vars, etc., including possibly walkrate scaling)
  • Paint bodies at proper location
  • Do something to flag unique bodies/locations.
associated processes:
  • Copy template for plc_sphere object (for phlogiston  map) Assign variables. (Coordinate with sphere area for transitions)
  • Build sub areas for planet/moon type systems (where determined)
  • Coordinate body vars for world map-type GUI (Alternately, write unique GUI for each- location buttons concerns)
  • Build overland maps for body areas (where applicable- a YATT function) Coordinate linkage
  • (New module for each #2-4 items and areas ++level of detail
  • Geonomicon (GUI) entries, etc. text/blob fields in db
  • 2DA encounter/misc. tables
I'm not opposed to learning to do this myself, not neccessarily through a toolset plugin either, or all at once; and I realize some of the above probably doesn't need to be batch processed at all.

Of course, the notion of a sphere building plugin that could generate the above from simplified parameters (as opposed to translating some elements from AS3) appeals to me, as it would give others a headstart on creating.

I'll have a look at SkyWingvL's library, or any other places of suggestion. It's new ground for me, so any thoughts you might share would be appreciated.
:wizard:

#2
painofdungeoneternal

painofdungeoneternal
  • Members
  • 1 799 сообщений
Options:
A: look for kivinen's stuff, and some resources on perl, he's the only one who really did things with areas.

B: Rework a toolset plugin like YATT, and learn C#, probably main way

C: do it dynamically using BCK, position items via script following data in sqllite database. ( use features like in my wall of iron spell to place items, but set up models and blueprints so they will work ) Basically create areas using template areas using new script functions grinning fool just added.

While C is easier, it may or may not be viable ( more of a theory of mine that is a possible way of doing things, and very likely can be a dead end. )

Note that what you are describing is far more involved than anything I've ever done, and would require your learning a lot of things to accomplish. You probably want to focus more on static sets then on some advanced tools for which you'd need to be at Grinning Fools, 0100010 or Skywing's level to accomplish. Now if you know C#, C++ and how to use a debugger and how to hook into the running game you probably can do what you outline, but from what i've seen just using the toolset can be a challenge for most.

I'd suggest doing a smaller project which can become the larger project ( single area with planets, single overland map ) and getting something working just using the toolset. Basically if you want to build the pyramids of giza, start with a small pyramid so you have something to be proud of quickly, then add levels to that as time goes on.

#3
Boozehound Blue

Boozehound Blue
  • Members
  • 64 сообщений
True; and I have looked at the alternative of C. It has its advantages, esp. if limited to SP. As for waypoints, I'd like to think that simply scripting a creature to walk in a circle/ellipse without them is less resource intensive than painting hundreds. (They could use their own local variables for calculation as opposed to accessing a db/2DA).

Still, that leaves a lot of manual transcription of data. As with .sef files-merely changing the name of the diffuse texture and renaming the file.

Of course, another way to go is to animate the planets as placeables and interact with the system differently (as the animations would reset every time you reentered area)

Whichever approach of implementation ultimately best, I still need to develop the resources outside of the toolset, so I'm sticking to that for the moment; but I'll work up a couple alternatives for a couple spheres and throw it up on the vault, go from there.

Food for thought

#4
painofdungeoneternal

painofdungeoneternal
  • Members
  • 1 799 сообщений
There is a thing called placeable effects too. Each one could be a planet.

I use this for a weather system, I make large squares of fog, snow falling, etc, then i lay them down in a grid using a set name ( so i can easily delete them later and replace with a new effect ). This combined with area settings such as fog color and far plane look very realistic. Some effects affect ground plane color and thus i can make the snow white- and another allows me to create a flood plane showing the surface level of water.

Yes you can program them to walk in a circle, you still want to make short segments - a waypoint is really just a way to allow you to control script locations from the toolset. For my battle system implementation, i stored locations to the database instead of to waypoints, walking around the PW.

You should look at doing this using NWNx, that way you can use sqlite to make this work. By the time you are done it will be working in single player.