Adds title.py for higher-level access to an entire WAD and all of its components without having to handle each one separately
Fixes a bug in content.py and removes a mitigation for that bug in crypto.py that also caused issues
Allows for re-encryption of content and for that content to be loaded back into a ContentRegion
Allows dumping TMD, Ticket, ContentRegion, and WAD objects back into raw data for outputting
Allows for creating blank objects of each type so that data can be loaded into them after creation, rather than forcing you to have that data beforehand (this allows title.py to actually function for creating a new WAD from loose files)
Removes unnecessary instance attributes that didn't need to be exposed and would become poisoned upon any changes
Removes some remaining instance methods that just retrieved instance attributes that you could already access
Replaces content.py's get_enc_content() and get_content() with get_enc_content_by_id()/get_enc_content_by_cid() and get_content_by_id() and get_content_by_cid() to allow getting content by either its content index or ID
Probably a couple more changes here and there that I am forgetting.
WAD packing is finally finished! This PR changes a sizable number of things in libWIiPy:
wad.py
,tmd.py
,ticket.py
,content.py
title.py
for higher-level access to an entire WAD and all of its components without having to handle each one separatelycontent.py
and removes a mitigation for that bug incrypto.py
that also caused issuestitle.py
to actually function for creating a new WAD from loose files)content.py
'sget_enc_content()
andget_content()
withget_enc_content_by_id()
/get_enc_content_by_cid()
andget_content_by_id()
andget_content_by_cid()
to allow getting content by either its content index or IDProbably a couple more changes here and there that I am forgetting.
We're now ready for release v0.2.0!
(This would close #11 and complete Milestone 1)