Comments (4)
Maybe even providing a BranchScript
class in bsp_tool.branches.base
for fast prototyping could be useful
and maybe a method for copying an existing branch script to use as a base
being able to write a branch script to a .py file with a method would be ideal
(though a python class that prints itself is likely an interesting challenge)
from bsp_tool.
Added the BspLump
& subclasses to allow loading lumps dynamically, but it's fairly limited
Still to re-support:
- Editing lumps
- Saving changes to file
- Loading lzma compressed lumps
Also managed to break the simpler lump classes by trying to simplify things with a decorator
looks like it isn't overriding init like I'd hoped it would
from bsp_tool.
OK, most of the bugs brought on by new refactor appear to be resolved, and some new tests have been written just in case
Editing lumps still needs to be implemented, but once that's done saving changes only need some slight modifications
Compressed lumps will need reloading after writing, and internal diffs can be purged
Compressed lumps now load correctly with the current system, though they do store decompressed lumps in memory
Temporary files might be better for performance, but a nightmare to manage
So the only major addition required now is re-implementing editing lumps, it should work the same as before, though likely with a system for checking data is valid behind the scenes
Checking things like valid indices between lumps will be left to branch script methods
further breaking down the core methods might also make Inheritance easier, reducing the total volume of code again
from bsp_tool.
Changes can now be saved, Iād say this feature is pretty much implemented. Obviously more iterations could be made but this issue can be closed now.
from bsp_tool.
Related Issues (20)
- [Test Maps] `genesis3d`
- Configure `pytest` to remove naming convention HOT 2
- Create a `utils` submodule to pull tools out of `branches` HOT 1
- (extensions.editor) `.save_as(filename: str)` method for all `MapFile` classes
- (extensions.editor) MetaPattern string conversion is an ugly mess
- [Apex Archive] Season19 removed pakfiles, where are the cubemaps? HOT 4
- Another wave of geometry refactors HOT 4
- (extensions.decompile) Include TriColl meshes when decompiling Titanfall Engine maps HOT 3
- Move `extensions.editor.generic` into `utils.editor`
- (extensions.decompile) Standardising decompile extraction & processing
- BitField order is backwards, should be the same as C/C++ HOT 3
- [Apex Archive] Identify origins of loose maps, then remove them HOT 1
- [Test Maps] `apex_legends50`
- `bsp.bsp_version` should just be `bsp.version` HOT 1
- Geometry performance could be better HOT 3
- `editor.Brush`-> `List[geometry.Mesh]` HOT 1
- (utils.geometry) remove iterations.batched
- (extensions.lightmaps) Select Faces lump for Source Engine `lightmap_faces`
- [Test Maps] `apex_legends52`
- BSPX Test Maps HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
š Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. ššš
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ā¤ļø Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from bsp_tool.