mirror of
https://github.com/open-goal/jak-project.git
synced 2024-11-23 06:09:57 +00:00
Jak3 Build Environment (#3098)
This sets out the bones of a Jak 3 build, many things are stubbed out, guessed, or copied from Jak 2 but it should at least be good enough to: run `task set-game-jak3` launch the repl run builds from the repl build outputs themselves are untested but the build itself runs without errors --------- Co-authored-by: Tyler Wilding <xtvaser@gmail.com>
This commit is contained in:
parent
637b043293
commit
07427799a6
@ -1 +0,0 @@
|
||||
endOfLine: "auto"
|
11
.prettierrc.json
Normal file
11
.prettierrc.json
Normal file
@ -0,0 +1,11 @@
|
||||
{
|
||||
"endOfLine": "auto",
|
||||
"overrides": [
|
||||
{
|
||||
"files": ["**/*.jsonc"],
|
||||
"options": {
|
||||
"parser": "json"
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
19
Taskfile.yml
19
Taskfile.yml
@ -74,16 +74,6 @@ tasks:
|
||||
msg: "Couldn't locate compiler executable in '{{.GOALC_BIN_RELEASE_DIR}}/goalc'"
|
||||
cmds:
|
||||
- "{{.GOALC_BIN_RELEASE_DIR}}/goalc --user-auto --game {{.GAME}}"
|
||||
format:
|
||||
desc: "Format code"
|
||||
cmds:
|
||||
- cmd: python ./scripts/cpp/format-includes.py
|
||||
- cmd: python ./third-party/run-clang-format/run-clang-format.py -r common decompiler game goalc test tools lsp -i
|
||||
# npm install -g prettier
|
||||
- cmd: npx prettier --write ./decompiler/config/jak1/**/*.jsonc
|
||||
ignore_error: true
|
||||
- cmd: npx prettier --write ./decompiler/config/jak2/**/*.jsonc
|
||||
ignore_error: true
|
||||
format-json:
|
||||
desc: "Format code"
|
||||
cmds:
|
||||
@ -92,6 +82,15 @@ tasks:
|
||||
ignore_error: true
|
||||
- cmd: npx prettier --write ./decompiler/config/jak2/**/*.jsonc
|
||||
ignore_error: true
|
||||
- cmd: npx prettier --write ./decompiler/config/jak3/**/*.jsonc
|
||||
ignore_error: true
|
||||
format:
|
||||
desc: "Format code"
|
||||
cmds:
|
||||
- cmd: python ./scripts/cpp/format-includes.py
|
||||
- cmd: python ./third-party/run-clang-format/run-clang-format.py -r common decompiler game goalc test tools lsp -i
|
||||
- task: format-json
|
||||
|
||||
# DECOMPILING
|
||||
decomp:
|
||||
cmds:
|
||||
|
@ -11,13 +11,15 @@ GameVersion game_name_to_version(const std::string& name) {
|
||||
return GameVersion::Jak1;
|
||||
} else if (name == "jak2") {
|
||||
return GameVersion::Jak2;
|
||||
} else if (name == "jak3") {
|
||||
return GameVersion::Jak3;
|
||||
} else {
|
||||
ASSERT_MSG(false, fmt::format("invalid game name: {}", name));
|
||||
}
|
||||
}
|
||||
|
||||
bool valid_game_version(const std::string& name) {
|
||||
return name == "jak1" || name == "jak2";
|
||||
return name == "jak1" || name == "jak2" || name == "jak3";
|
||||
}
|
||||
|
||||
std::string version_to_game_name(GameVersion v) {
|
||||
@ -26,6 +28,8 @@ std::string version_to_game_name(GameVersion v) {
|
||||
return "jak1";
|
||||
case GameVersion::Jak2:
|
||||
return "jak2";
|
||||
case GameVersion::Jak3:
|
||||
return "jak3";
|
||||
default:
|
||||
ASSERT_MSG(false, fmt::format("no game_name for version: {} found", fmt::underlying(v)));
|
||||
}
|
||||
@ -37,13 +41,16 @@ std::string version_to_game_name_external(GameVersion v) {
|
||||
return "Jak 1";
|
||||
case GameVersion::Jak2:
|
||||
return "Jak 2";
|
||||
case GameVersion::Jak3:
|
||||
return "Jak 3";
|
||||
default:
|
||||
ASSERT_MSG(false, fmt::format("no game_name for version: {} found", fmt::underlying(v)));
|
||||
}
|
||||
}
|
||||
|
||||
std::vector<std::string> valid_game_version_names() {
|
||||
return {game_version_names[GameVersion::Jak1], game_version_names[GameVersion::Jak2]};
|
||||
return {game_version_names[GameVersion::Jak1], game_version_names[GameVersion::Jak2],
|
||||
game_version_names[GameVersion::Jak3]};
|
||||
}
|
||||
|
||||
std::string build_revision() {
|
||||
|
@ -191,7 +191,7 @@ TP_Type SimpleExpression::get_type(const TypeState& input,
|
||||
return TP_Type::make_from_ts("float");
|
||||
}
|
||||
// new for jak 2:
|
||||
if (env.version == GameVersion::Jak2 && in_type.is_integer_constant() &&
|
||||
if (env.version >= GameVersion::Jak2 && in_type.is_integer_constant() &&
|
||||
(s64)((s32)in_type.get_integer_constant()) == (s64)in_type.get_integer_constant()) {
|
||||
return TP_Type::make_from_ts("float");
|
||||
}
|
||||
@ -406,7 +406,7 @@ TP_Type SimpleExpression::get_type_int2(const TypeState& input,
|
||||
}
|
||||
|
||||
if (m_kind == Kind::RIGHT_SHIFT_ARITH) {
|
||||
if (env.version == GameVersion::Jak2 && arg0_type.typespec().base_type() == "float") {
|
||||
if (env.version >= GameVersion::Jak2 && arg0_type.typespec().base_type() == "float") {
|
||||
return TP_Type::make_from_ts(TypeSpec("float"));
|
||||
}
|
||||
return TP_Type::make_from_ts(TypeSpec("int"));
|
||||
|
@ -170,7 +170,7 @@ FormElement* handle_get_property_struct(const std::vector<Form*>& forms,
|
||||
const Env& env) {
|
||||
return handle_get_property_data_or_structure(
|
||||
forms, pool, env, ResLumpMacroElement::Kind::STRUCT,
|
||||
env.version == GameVersion::Jak2 ? "(the-as structure #f)" : "#f", TypeSpec("structure"));
|
||||
env.version >= GameVersion::Jak2 ? "(the-as structure #f)" : "#f", TypeSpec("structure"));
|
||||
}
|
||||
|
||||
FormElement* handle_get_property_value(const std::vector<Form*>& forms,
|
||||
|
@ -3255,7 +3255,7 @@ goos::Object DefpartgroupElement::to_form_internal(const Env& env) const {
|
||||
|
||||
if (offset) {
|
||||
// jak2 has switched this field to a signed 16 bit number
|
||||
if (env.version == GameVersion::Jak2) {
|
||||
if (env.version >= GameVersion::Jak2) {
|
||||
result += fmt::format(" :offset {}", (s16)offset);
|
||||
} else {
|
||||
result += fmt::format(" :offset {}", offset);
|
||||
|
@ -122,7 +122,7 @@ Form* try_cast_simplify(Form* in,
|
||||
return in;
|
||||
}
|
||||
|
||||
if (env.version == GameVersion::Jak2) {
|
||||
if (env.version >= GameVersion::Jak2) {
|
||||
if (new_type == TypeSpec("float")) {
|
||||
auto ic = get_goal_integer_constant(in, env);
|
||||
if (ic) {
|
||||
@ -138,7 +138,7 @@ Form* try_cast_simplify(Form* in,
|
||||
if (new_type == TypeSpec("meters")) {
|
||||
auto fc = get_goal_float_constant(in);
|
||||
|
||||
if (!fc && env.version == GameVersion::Jak2) {
|
||||
if (!fc && env.version >= GameVersion::Jak2) {
|
||||
auto ic = get_goal_integer_constant(in, env);
|
||||
if (ic) {
|
||||
ASSERT((s64)*ic == (s64)(s32)*ic);
|
||||
@ -2853,7 +2853,7 @@ bool try_to_rewrite_vector_inline_ctor(const Env& env,
|
||||
token_matchers = {DerefTokenMatcher::string("quad")};
|
||||
}
|
||||
|
||||
if (env.version == GameVersion::Jak2) {
|
||||
if (env.version >= GameVersion::Jak2) {
|
||||
token_matchers = {DerefTokenMatcher::string("quad")};
|
||||
}
|
||||
|
||||
@ -3376,7 +3376,7 @@ void FunctionCallElement::update_from_stack(const Env& env,
|
||||
argset = argset.substr(1);
|
||||
auto argsym = arg_forms.at(1)->to_string(env);
|
||||
// convert the float param
|
||||
if (env.version == GameVersion::Jak2) {
|
||||
if (env.version >= GameVersion::Jak2) {
|
||||
static const std::unordered_set<std::string> use_degrees_settings = {
|
||||
"matrix-blend-max-angle",
|
||||
"fov",
|
||||
@ -4081,7 +4081,7 @@ void DerefElement::update_from_stack(const Env& env,
|
||||
}
|
||||
|
||||
auto as_simple_expr = m_base->try_as_element<SimpleExpressionElement>();
|
||||
if (env.version == GameVersion::Jak2 && as_simple_expr && as_simple_expr->expr().is_identity() &&
|
||||
if (env.version >= GameVersion::Jak2 && as_simple_expr && as_simple_expr->expr().is_identity() &&
|
||||
as_simple_expr->expr().get_arg(0).is_sym_val() &&
|
||||
as_simple_expr->expr().get_arg(0).get_str() == "*game-info*" && m_tokens.size() >= 2 &&
|
||||
m_tokens.at(0).is_field_name("sub-task-list") && m_tokens.at(1).is_int()) {
|
||||
|
@ -263,7 +263,7 @@ static void link_v2_or_v4(LinkedObjectFile& f,
|
||||
const uint8_t* code_end =
|
||||
&data.at(code_offset + code_size - 1) + 1; // get the pointer to one past the end.
|
||||
|
||||
if (version == GameVersion::Jak2) {
|
||||
if (version >= GameVersion::Jak2) {
|
||||
while (((code_end - code_start) % 4)) {
|
||||
code_end++;
|
||||
}
|
||||
@ -689,7 +689,7 @@ static void link_v3(LinkedObjectFile& f,
|
||||
segment_size++;
|
||||
}
|
||||
|
||||
if (game_version == GameVersion::Jak2) {
|
||||
if (game_version >= GameVersion::Jak2) {
|
||||
while (segment_size % 4) {
|
||||
segment_size++;
|
||||
}
|
||||
|
@ -647,8 +647,8 @@ void ObjectFileDB::ir2_type_analysis_pass(int seg, const Config& config, ObjectF
|
||||
}
|
||||
|
||||
constexpr bool kForceNewTypes = false;
|
||||
if (config.game_version == GameVersion::Jak2 || kForceNewTypes) {
|
||||
// use new types for jak 2 always
|
||||
if (config.game_version != GameVersion::Jak1 || kForceNewTypes) {
|
||||
// use new types for jak 2/3 always
|
||||
types2::Input in;
|
||||
types2::Output out;
|
||||
in.func = &func;
|
||||
|
@ -1846,7 +1846,24 @@ void inspect_top_level_for_metadata(Function& top_level,
|
||||
if (state_name.empty()) {
|
||||
continue;
|
||||
}
|
||||
objectFile.state_methods[type_match][method_id] = state_name;
|
||||
// Ensure there are no labels between now and when the `method-set!` is actually called
|
||||
bool was_another_label = false;
|
||||
for (int j = i; j < (int)top_level.ir2.atomic_ops->ops.size(); j++) {
|
||||
const auto& temp_aop = top_level.ir2.atomic_ops->ops.at(j);
|
||||
const std::string temp_as_str = temp_aop.get()->to_string(top_level.ir2.env);
|
||||
if (temp_as_str.find("call!") != std::string::npos) {
|
||||
break;
|
||||
}
|
||||
auto temp_label_match =
|
||||
get_regex_match(temp_as_str, std::regex("\\(set!\\s[^\\s]*\\s(L.*)\\)"));
|
||||
if (!temp_label_match.empty()) {
|
||||
was_another_label = true;
|
||||
break;
|
||||
}
|
||||
}
|
||||
if (!was_another_label) {
|
||||
objectFile.state_methods[type_match][method_id] = state_name;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
File diff suppressed because it is too large
Load Diff
@ -125,5 +125,14 @@
|
||||
"apply_patches": true,
|
||||
// what to patch an object to and what the patch file is
|
||||
"object_patches": {
|
||||
},
|
||||
"version_overrides": {
|
||||
"ntsc_v1": {},
|
||||
"pal": {
|
||||
"game_name": "jak3_pal",
|
||||
"expected_elf_name": "SCES_524.60",
|
||||
"is_pal": true,
|
||||
"object_patches": {}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -1 +1 @@
|
||||
{}
|
||||
{}
|
||||
|
@ -755,14 +755,21 @@
|
||||
"generic-warp-dest",
|
||||
"generic-warp-envmap-dest",
|
||||
"generic-no-light-proc"
|
||||
|
||||
],
|
||||
|
||||
"mips2c_jump_table_functions": {},
|
||||
|
||||
// there are some missing textures. I don't know what the game actually does here.
|
||||
// the format for entries is [level, tpage, index]
|
||||
"missing_textures": [["lfac", 0, 0], ["ltow", 0, 0], ["lcit", 0, 0], ["pow", 0, 0], ["wasintro", 0, 0], ["lfacctyb", 0, 0], ["intpfall", 0, 0]],
|
||||
"missing_textures": [
|
||||
["lfac", 0, 0],
|
||||
["ltow", 0, 0],
|
||||
["lcit", 0, 0],
|
||||
["pow", 0, 0],
|
||||
["wasintro", 0, 0],
|
||||
["lfacctyb", 0, 0],
|
||||
["intpfall", 0, 0]
|
||||
],
|
||||
|
||||
// some object files have garbage pad data at the end which makes the decompiler
|
||||
// assume they must be different files, such as the art group for orb-cache-top.
|
||||
|
@ -7,7 +7,7 @@
|
||||
// most objects are part of CGO/DGO files (both go in dgo_names). This includes levels and the engine
|
||||
// the DGOs will be processed in this order. Usually it's best to have KERNEL, ENGINE, then the levels when
|
||||
// you want to run on the entire game.
|
||||
"dgo_names":[
|
||||
"dgo_names": [
|
||||
//"CGO/ART.CGO",
|
||||
"CGO/KERNEL.CGO",
|
||||
// "CGO/ENGINE.CGO",
|
||||
@ -285,7 +285,7 @@
|
||||
"DGO/LCTYPROT.DGO",
|
||||
"DGO/DESHOVER.DGO",
|
||||
"DGO/DESBOSS2.DGO"
|
||||
],
|
||||
],
|
||||
|
||||
// some objects are part of STR files (streaming data).
|
||||
"str_file_names": [],
|
||||
|
@ -1 +1 @@
|
||||
{}
|
||||
{}
|
||||
|
@ -1 +1 @@
|
||||
{}
|
||||
{}
|
||||
|
@ -1 +1 @@
|
||||
{}
|
||||
{}
|
||||
|
@ -1 +1 @@
|
||||
{}
|
||||
{}
|
||||
|
@ -1368,7 +1368,7 @@ void types2_for_add(types2::Type& type_out,
|
||||
}
|
||||
}
|
||||
|
||||
if (env.version == GameVersion::Jak2 && tc(dts, TypeSpec("symbol"), arg1_type) &&
|
||||
if (env.version >= GameVersion::Jak2 && tc(dts, TypeSpec("symbol"), arg1_type) &&
|
||||
is_int_or_uint(dts, arg0_type)) {
|
||||
if (arg0_type.is_integer_constant(jak2::SYM_TO_STRING_OFFSET)) {
|
||||
// symbol -> GOAL String
|
||||
|
57
game/assets/jak3/game_subtitle.gp
Normal file
57
game/assets/jak3/game_subtitle.gp
Normal file
@ -0,0 +1,57 @@
|
||||
;; "project file" for subtitles make tool.
|
||||
|
||||
(subtitle-v2
|
||||
(file-json
|
||||
:language-id 0
|
||||
:text-version "jak2"
|
||||
:lines "game/assets/jak2/subtitle/subtitle_lines_en-US.json"
|
||||
:meta "game/assets/jak2/subtitle/subtitle_meta_en-US.json")
|
||||
(file-json
|
||||
:language-id 1
|
||||
:text-version "jak2"
|
||||
:lines "game/assets/jak2/subtitle/subtitle_lines_fr-FR.json"
|
||||
:meta "game/assets/jak2/subtitle/subtitle_meta_fr-FR.json"
|
||||
:lines-base "game/assets/jak2/subtitle/subtitle_lines_en-US.json"
|
||||
:meta-base "game/assets/jak2/subtitle/subtitle_meta_en-US.json")
|
||||
(file-json
|
||||
:language-id 2
|
||||
:text-version "jak2"
|
||||
:lines "game/assets/jak2/subtitle/subtitle_lines_de-DE.json"
|
||||
:meta "game/assets/jak2/subtitle/subtitle_meta_de-DE.json"
|
||||
:lines-base "game/assets/jak2/subtitle/subtitle_lines_en-US.json"
|
||||
:meta-base "game/assets/jak2/subtitle/subtitle_meta_en-US.json")
|
||||
(file-json
|
||||
:language-id 3
|
||||
:text-version "jak2"
|
||||
:lines "game/assets/jak2/subtitle/subtitle_lines_es-ES.json"
|
||||
:meta "game/assets/jak2/subtitle/subtitle_meta_es-ES.json"
|
||||
:lines-base "game/assets/jak2/subtitle/subtitle_lines_en-US.json"
|
||||
:meta-base "game/assets/jak2/subtitle/subtitle_meta_en-US.json")
|
||||
(file-json
|
||||
:language-id 4
|
||||
:text-version "jak2"
|
||||
:lines "game/assets/jak2/subtitle/subtitle_lines_it-IT.json"
|
||||
:meta "game/assets/jak2/subtitle/subtitle_meta_it-IT.json"
|
||||
:lines-base "game/assets/jak2/subtitle/subtitle_lines_en-US.json"
|
||||
:meta-base "game/assets/jak2/subtitle/subtitle_meta_en-US.json")
|
||||
(file-json
|
||||
:language-id 5
|
||||
:text-version "jak2"
|
||||
:lines "game/assets/jak2/subtitle/subtitle_lines_jp-JP.json"
|
||||
:lines-base "game/assets/jak2/subtitle/subtitle_lines_en-US.json"
|
||||
:meta "game/assets/jak2/subtitle/subtitle_meta_jp-JP.json"
|
||||
:meta-base "game/assets/jak2/subtitle/subtitle_meta_en-US.json")
|
||||
(file-json
|
||||
:language-id 6
|
||||
:text-version "jak2"
|
||||
:lines "game/assets/jak2/subtitle/subtitle_lines_ko-KR.json"
|
||||
:meta "game/assets/jak2/subtitle/subtitle_meta_ko-KR.json"
|
||||
:lines-base "game/assets/jak2/subtitle/subtitle_lines_en-US.json"
|
||||
:meta-base "game/assets/jak2/subtitle/subtitle_meta_en-US.json")
|
||||
(file-json
|
||||
:language-id 7
|
||||
:text-version "jak2"
|
||||
:lines "game/assets/jak2/subtitle/subtitle_lines_en-GB.json"
|
||||
:meta "game/assets/jak2/subtitle/subtitle_meta_en-GB.json"
|
||||
:lines-base "game/assets/jak2/subtitle/subtitle_lines_en-US.json"
|
||||
:meta-base "game/assets/jak2/subtitle/subtitle_meta_en-US.json"))
|
18
game/assets/jak3/game_text.gp
Normal file
18
game/assets/jak3/game_text.gp
Normal file
@ -0,0 +1,18 @@
|
||||
;; "project file" for text make tool.
|
||||
;; it's very simple... a list of (action args...)
|
||||
;; There are two actions:
|
||||
;; - file-json (A path to a json file)
|
||||
;; - args: (language_id text_version group_name '(filename list))
|
||||
;; - file (A path to a GOAL data file)
|
||||
;; - the same arguments are provided within the file itself
|
||||
|
||||
(text
|
||||
;; NOTE : we compile using the fixed v2 encoding because it's what we use.
|
||||
(file "$DECOMP/assets/game_text.txt") ;; this is the decompiler-generated file!
|
||||
;; add custom files down here
|
||||
(file-json 0 jak2 "common" '("game/assets/jak3/text/game_custom_text_en-US.json"))
|
||||
(file-json 5 jak2 "common" '("game/assets/jak3/text/game_custom_text_ja-JP.json"))
|
||||
(file-json 7 jak2 "common" '("game/assets/jak3/text/game_custom_text_en-GB.json"))
|
||||
)
|
||||
|
||||
|
5
game/assets/jak3/subtitle/subtitle_lines_de-DE.json
Normal file
5
game/assets/jak3/subtitle/subtitle_lines_de-DE.json
Normal file
@ -0,0 +1,5 @@
|
||||
{
|
||||
"cutscenes": {},
|
||||
"other": {},
|
||||
"speakers": {}
|
||||
}
|
5
game/assets/jak3/subtitle/subtitle_lines_en-GB.json
Normal file
5
game/assets/jak3/subtitle/subtitle_lines_en-GB.json
Normal file
@ -0,0 +1,5 @@
|
||||
{
|
||||
"cutscenes": {},
|
||||
"other": {},
|
||||
"speakers": {}
|
||||
}
|
5
game/assets/jak3/subtitle/subtitle_lines_en-US.json
Normal file
5
game/assets/jak3/subtitle/subtitle_lines_en-US.json
Normal file
@ -0,0 +1,5 @@
|
||||
{
|
||||
"cutscenes": {},
|
||||
"other": {},
|
||||
"speakers": {}
|
||||
}
|
5
game/assets/jak3/subtitle/subtitle_lines_es-ES.json
Normal file
5
game/assets/jak3/subtitle/subtitle_lines_es-ES.json
Normal file
@ -0,0 +1,5 @@
|
||||
{
|
||||
"cutscenes": {},
|
||||
"other": {},
|
||||
"speakers": {}
|
||||
}
|
5
game/assets/jak3/subtitle/subtitle_lines_fr-FR.json
Normal file
5
game/assets/jak3/subtitle/subtitle_lines_fr-FR.json
Normal file
@ -0,0 +1,5 @@
|
||||
{
|
||||
"cutscenes": {},
|
||||
"other": {},
|
||||
"speakers": {}
|
||||
}
|
5
game/assets/jak3/subtitle/subtitle_lines_it-IT.json
Normal file
5
game/assets/jak3/subtitle/subtitle_lines_it-IT.json
Normal file
@ -0,0 +1,5 @@
|
||||
{
|
||||
"cutscenes": {},
|
||||
"other": {},
|
||||
"speakers": {}
|
||||
}
|
5
game/assets/jak3/subtitle/subtitle_lines_jp-JP.json
Normal file
5
game/assets/jak3/subtitle/subtitle_lines_jp-JP.json
Normal file
@ -0,0 +1,5 @@
|
||||
{
|
||||
"cutscenes": {},
|
||||
"other": {},
|
||||
"speakers": {}
|
||||
}
|
5
game/assets/jak3/subtitle/subtitle_lines_ko-KR.json
Normal file
5
game/assets/jak3/subtitle/subtitle_lines_ko-KR.json
Normal file
@ -0,0 +1,5 @@
|
||||
{
|
||||
"cutscenes": {},
|
||||
"other": {},
|
||||
"speakers": {}
|
||||
}
|
4
game/assets/jak3/subtitle/subtitle_meta_de-DE.json
Normal file
4
game/assets/jak3/subtitle/subtitle_meta_de-DE.json
Normal file
@ -0,0 +1,4 @@
|
||||
{
|
||||
"cutscenes": {},
|
||||
"other": {}
|
||||
}
|
4
game/assets/jak3/subtitle/subtitle_meta_en-GB.json
Normal file
4
game/assets/jak3/subtitle/subtitle_meta_en-GB.json
Normal file
@ -0,0 +1,4 @@
|
||||
{
|
||||
"cutscenes": {},
|
||||
"other": {}
|
||||
}
|
4
game/assets/jak3/subtitle/subtitle_meta_en-US.json
Normal file
4
game/assets/jak3/subtitle/subtitle_meta_en-US.json
Normal file
@ -0,0 +1,4 @@
|
||||
{
|
||||
"cutscenes": {},
|
||||
"other": {}
|
||||
}
|
4
game/assets/jak3/subtitle/subtitle_meta_es-ES.json
Normal file
4
game/assets/jak3/subtitle/subtitle_meta_es-ES.json
Normal file
@ -0,0 +1,4 @@
|
||||
{
|
||||
"cutscenes": {},
|
||||
"other": {}
|
||||
}
|
4
game/assets/jak3/subtitle/subtitle_meta_fr-FR.json
Normal file
4
game/assets/jak3/subtitle/subtitle_meta_fr-FR.json
Normal file
@ -0,0 +1,4 @@
|
||||
{
|
||||
"cutscenes": {},
|
||||
"other": {}
|
||||
}
|
4
game/assets/jak3/subtitle/subtitle_meta_it-IT.json
Normal file
4
game/assets/jak3/subtitle/subtitle_meta_it-IT.json
Normal file
@ -0,0 +1,4 @@
|
||||
{
|
||||
"cutscenes": {},
|
||||
"other": {}
|
||||
}
|
4
game/assets/jak3/subtitle/subtitle_meta_jp-JP.json
Normal file
4
game/assets/jak3/subtitle/subtitle_meta_jp-JP.json
Normal file
@ -0,0 +1,4 @@
|
||||
{
|
||||
"cutscenes": {},
|
||||
"other": {}
|
||||
}
|
4
game/assets/jak3/subtitle/subtitle_meta_ko-KR.json
Normal file
4
game/assets/jak3/subtitle/subtitle_meta_ko-KR.json
Normal file
@ -0,0 +1,4 @@
|
||||
{
|
||||
"cutscenes": {},
|
||||
"other": {}
|
||||
}
|
2
game/assets/jak3/text/game_custom_text_en-GB.json
Normal file
2
game/assets/jak3/text/game_custom_text_en-GB.json
Normal file
@ -0,0 +1,2 @@
|
||||
{
|
||||
}
|
2
game/assets/jak3/text/game_custom_text_en-US.json
Normal file
2
game/assets/jak3/text/game_custom_text_en-US.json
Normal file
@ -0,0 +1,2 @@
|
||||
{
|
||||
}
|
14
game/assets/jak3/text/game_custom_text_ja-JP.json
Normal file
14
game/assets/jak3/text/game_custom_text_ja-JP.json
Normal file
@ -0,0 +1,14 @@
|
||||
{
|
||||
"1a3": "しゅうへん機器をぬいたり, さしたり, 電源を 切ったりは しないでください",
|
||||
"1b5": "このアイコンが あらわれている間、しゅうへん機器をぬいたり, さしたり, 電源を 切ったりは しないでください",
|
||||
"1215": "デフォルト",
|
||||
"1216": "モーフィング・ガン",
|
||||
"1217": "ジェットボード",
|
||||
"1218": "タイタンスーツ",
|
||||
"1219": "ダークジャック",
|
||||
"121a": "乗り物",
|
||||
"124d": "オートセーブを無効にする",
|
||||
"124e": "オートセーブ オフ",
|
||||
"124f": "オートセーブを切っても よろしいでしょうか?",
|
||||
"1288": "パーティクル カリング"
|
||||
}
|
@ -1193,4 +1193,8 @@
|
||||
(asm-file "goal_src/jak2/compiler-setup.gc")
|
||||
(seval (fmt #t "Jak 2 Mode\n"))
|
||||
)
|
||||
((eq? GAME_VERSION 'jak3)
|
||||
(asm-file "goal_src/jak3/compiler-setup.gc")
|
||||
(seval (fmt #t "Jak 3 Mode\n"))
|
||||
)
|
||||
)
|
||||
|
37
goal_src/jak3/compiler-setup.gc
Normal file
37
goal_src/jak3/compiler-setup.gc
Normal file
@ -0,0 +1,37 @@
|
||||
;;
|
||||
;; Compiler Setup for Jak 3
|
||||
;;
|
||||
|
||||
;; load kernel type definitions.
|
||||
;; these types/functions are provided by Jak 3's runtime.
|
||||
(asm-file "goal_src/jak3/kernel-defs.gc")
|
||||
|
||||
;; load jak 3 project
|
||||
(load-project "goal_src/jak3/game.gp")
|
||||
|
||||
(defmacro basic? (obj)
|
||||
;; todo, make this more efficient
|
||||
`(= 4 (logand (the integer ,obj) #b111))
|
||||
)
|
||||
|
||||
(defmacro pair? (obj)
|
||||
;; todo, make this more efficient
|
||||
;`(= 2 (logand (the integer ,obj) #b111))
|
||||
`(< (shl (the-as int ,obj) 62) 0)
|
||||
)
|
||||
|
||||
(defmacro not-pair? (obj)
|
||||
`(>= (shl (the-as int ,obj) 62) 0)
|
||||
)
|
||||
|
||||
(defmacro binteger? (obj)
|
||||
`(zero? (logand (the integer ,obj) #b111))
|
||||
)
|
||||
|
||||
(defmacro rtype-of (obj)
|
||||
`(cond ((binteger? ,obj) binteger)
|
||||
((pair? ,obj) pair)
|
||||
((basic? ,obj) (-> (the basic ,obj) type))
|
||||
(else symbol)
|
||||
)
|
||||
)
|
18
goal_src/jak3/dgos/arenacst.gd
Normal file
18
goal_src/jak3/dgos/arenacst.gd
Normal file
@ -0,0 +1,18 @@
|
||||
("ARENACST.DGO"
|
||||
("tpage-1484.o"
|
||||
"tpage-1245.go"
|
||||
"tpage-1248.go"
|
||||
"tpage-1246.go"
|
||||
"daxter-highres-ag.go"
|
||||
"pecker-highres-ag.go"
|
||||
"jakc-highres-ag.go"
|
||||
"sig-highres-ag.go"
|
||||
"king-highres-ag.go"
|
||||
"seem-highres-ag.go"
|
||||
"jak-highres-ag.go"
|
||||
"battle-amulet-ag.go"
|
||||
"blue-gun-mod-one-ag.go"
|
||||
"wstd-gate-pass-ag.go"
|
||||
"yellow-barrel-ag.go"
|
||||
"arenacst.o"
|
||||
))
|
21
goal_src/jak3/dgos/cfa.gd
Normal file
21
goal_src/jak3/dgos/cfa.gd
Normal file
@ -0,0 +1,21 @@
|
||||
("CFA.DGO"
|
||||
("ctyfarm-obs.o"
|
||||
"ctyfarma-part.o"
|
||||
"ctyfarmb-part.o"
|
||||
"tpage-246.go"
|
||||
"tpage-244.go"
|
||||
"tpage-245.go"
|
||||
"tpage-243.go"
|
||||
"tpage-247.go"
|
||||
"tpage-241.go"
|
||||
"tpage-238.go"
|
||||
"com-airlock-outer-ag.go"
|
||||
"com-airlock-inner-ag.go"
|
||||
"farm-chilirots-ag.go"
|
||||
"farm-cabbage-ag.go"
|
||||
"farm-marrow-ag.go"
|
||||
"farm-beetree-ag.go"
|
||||
"farm-small-cabbage-ag.go"
|
||||
"farm-sprinkler-barrels-ag.go"
|
||||
"ctyfarma-vis.o"
|
||||
))
|
20
goal_src/jak3/dgos/cfb.gd
Normal file
20
goal_src/jak3/dgos/cfb.gd
Normal file
@ -0,0 +1,20 @@
|
||||
("CFB.DGO"
|
||||
("ctyfarm-obs.o"
|
||||
"ctyfarma-part.o"
|
||||
"ctyfarmb-part.o"
|
||||
"tpage-258.go"
|
||||
"tpage-256.go"
|
||||
"tpage-257.go"
|
||||
"tpage-255.go"
|
||||
"tpage-259.go"
|
||||
"tpage-253.go"
|
||||
"tpage-250.go"
|
||||
"yakow-ag.go"
|
||||
"farm-chilirots-ag.go"
|
||||
"farm-cabbage-ag.go"
|
||||
"farm-marrow-ag.go"
|
||||
"farm-beetree-ag.go"
|
||||
"farm-small-cabbage-ag.go"
|
||||
"farm-sprinkler-barrels-ag.go"
|
||||
"ctyfarmb-vis.o"
|
||||
))
|
14
goal_src/jak3/dgos/cgb.gd
Normal file
14
goal_src/jak3/dgos/cgb.gd
Normal file
@ -0,0 +1,14 @@
|
||||
("CGB.DGO"
|
||||
("ctygenb-part.o"
|
||||
"tpage-226.go"
|
||||
"tpage-224.go"
|
||||
"tpage-225.go"
|
||||
"tpage-227.go"
|
||||
"tpage-222.go"
|
||||
"tpage-219.go"
|
||||
"jakc-highres-ag.go"
|
||||
"city-flitter-ag.go"
|
||||
"com-airlock-outer-ag.go"
|
||||
"battle-amulet-ag.go"
|
||||
"ctygenb-vis.o"
|
||||
))
|
15
goal_src/jak3/dgos/cia.gd
Normal file
15
goal_src/jak3/dgos/cia.gd
Normal file
@ -0,0 +1,15 @@
|
||||
("CIA.DGO"
|
||||
("elec-gate.o"
|
||||
"ctyinda-part.o"
|
||||
"ctyinda-obs.o"
|
||||
"tpage-180.go"
|
||||
"tpage-1401.go"
|
||||
"tpage-179.go"
|
||||
"tpage-177.go"
|
||||
"tpage-175.go"
|
||||
"krimson-wall-ag.go"
|
||||
"com-airlock-outer-ag.go"
|
||||
"ctyinda-evil-streetlamp-ag.go"
|
||||
"vin-door-ctyinda-ag.go"
|
||||
"ctyinda-vis.o"
|
||||
))
|
11
goal_src/jak3/dgos/cib.gd
Normal file
11
goal_src/jak3/dgos/cib.gd
Normal file
@ -0,0 +1,11 @@
|
||||
("CIB.DGO"
|
||||
("ctyindb-part.o"
|
||||
"ctyindb-obs.o"
|
||||
"tpage-188.go"
|
||||
"tpage-186.go"
|
||||
"tpage-187.go"
|
||||
"tpage-184.go"
|
||||
"tpage-181.go"
|
||||
"krimson-wall-ag.go"
|
||||
"ctyindb-vis.o"
|
||||
))
|
10
goal_src/jak3/dgos/citycast.gd
Normal file
10
goal_src/jak3/dgos/citycast.gd
Normal file
@ -0,0 +1,10 @@
|
||||
("CITYCAST.DGO"
|
||||
("tpage-2094.o"
|
||||
"tpage-2095.go"
|
||||
"daxter-highres-ag.go"
|
||||
"jakc-highres-ag.go"
|
||||
"torn-highres-ag.go"
|
||||
"palmpilot-b-ag.go"
|
||||
"particleman-ag.go"
|
||||
"citycast.o"
|
||||
))
|
50
goal_src/jak3/dgos/comba.gd
Normal file
50
goal_src/jak3/dgos/comba.gd
Normal file
@ -0,0 +1,50 @@
|
||||
("COMBA.DGO"
|
||||
("squad-control-h.o"
|
||||
"squad-control.o"
|
||||
"vehicle-h.o"
|
||||
"vehicle-part.o"
|
||||
"vehicle-effects.o"
|
||||
"vehicle.o"
|
||||
"vehicle-util.o"
|
||||
"vehicle-physics.o"
|
||||
"vehicle-states.o"
|
||||
"vehicle-manager.o"
|
||||
"vehicle-hud.o"
|
||||
"turret-control.o"
|
||||
"target-pilot.o"
|
||||
"pilot-states.o"
|
||||
"comb-mood.o"
|
||||
"comb-part.o"
|
||||
"comb-obs.o"
|
||||
"comb-sentry.o"
|
||||
"comb-field.o"
|
||||
"comb-scenes.o"
|
||||
"h-sled.o"
|
||||
"comb-travel.o"
|
||||
"comba-init.o"
|
||||
"jak-pilot+0-ag.go"
|
||||
"jak-pilot-hcar+0-ag.go"
|
||||
"jak-pilot-wcar+0-ag.go"
|
||||
"jak-pilot-gun+0-ag.go"
|
||||
"tpage-2431.go"
|
||||
"tpage-1577.go"
|
||||
"tpage-2889.go"
|
||||
"tpage-2481.go"
|
||||
"tpage-2496.go"
|
||||
"tpage-2676.go"
|
||||
"daxter-highres-ag.go"
|
||||
"pecker-highres-ag.go"
|
||||
"jakc-highres-ag.go"
|
||||
"comb-pillar-ag.go"
|
||||
"pre-sled-ag.go"
|
||||
"comb-obstacle-ag.go"
|
||||
"comb-sentinel-ag.go"
|
||||
"comb-rail-rider-ag.go"
|
||||
"comb-energy-ring-ag.go"
|
||||
"precursor-ag.go"
|
||||
"vehicle-explosion-ag.go"
|
||||
"kidmedallion-ag.go"
|
||||
"particleman-ag.go"
|
||||
"security-wall-ag.go"
|
||||
"comba.o"
|
||||
))
|
4
goal_src/jak3/dgos/combb.gd
Normal file
4
goal_src/jak3/dgos/combb.gd
Normal file
@ -0,0 +1,4 @@
|
||||
("COMBB.DGO"
|
||||
("tpage-2189.o"
|
||||
"combb.o"
|
||||
))
|
4
goal_src/jak3/dgos/combc.gd
Normal file
4
goal_src/jak3/dgos/combc.gd
Normal file
@ -0,0 +1,4 @@
|
||||
("COMBC.DGO"
|
||||
("tpage-2191.o"
|
||||
"combc.o"
|
||||
))
|
4
goal_src/jak3/dgos/combd.gd
Normal file
4
goal_src/jak3/dgos/combd.gd
Normal file
@ -0,0 +1,4 @@
|
||||
("COMBD.DGO"
|
||||
("tpage-2199.o"
|
||||
"combd.o"
|
||||
))
|
4
goal_src/jak3/dgos/combe.gd
Normal file
4
goal_src/jak3/dgos/combe.gd
Normal file
@ -0,0 +1,4 @@
|
||||
("COMBE.DGO"
|
||||
("tpage-2599.o"
|
||||
"combe.o"
|
||||
))
|
7
goal_src/jak3/dgos/combn.gd
Normal file
7
goal_src/jak3/dgos/combn.gd
Normal file
@ -0,0 +1,7 @@
|
||||
("COMBN.DGO"
|
||||
("tpage-2210.o"
|
||||
"tpage-2595.go"
|
||||
"tpage-2211.go"
|
||||
"min-elevator-ag.go"
|
||||
"combn.o"
|
||||
))
|
13
goal_src/jak3/dgos/combx.gd
Normal file
13
goal_src/jak3/dgos/combx.gd
Normal file
@ -0,0 +1,13 @@
|
||||
("COMBX.DGO"
|
||||
("pecker-ingame.o"
|
||||
"combx-obs.o"
|
||||
"combx-scenes.o"
|
||||
"tpage-2333.go"
|
||||
"tpage-2306.go"
|
||||
"tpage-2334.go"
|
||||
"daxter-highres-ag.go"
|
||||
"pecker-ingame-ag.go"
|
||||
"jakc-highres-ag.go"
|
||||
"tpl-elevator-ag.go"
|
||||
"combx.o"
|
||||
))
|
16
goal_src/jak3/dgos/cpo.gd
Normal file
16
goal_src/jak3/dgos/cpo.gd
Normal file
@ -0,0 +1,16 @@
|
||||
("CPO.DGO"
|
||||
("ctyport-part.o"
|
||||
"ctyport-scenes.o"
|
||||
"tpage-274.go"
|
||||
"tpage-272.go"
|
||||
"tpage-273.go"
|
||||
"tpage-268.go"
|
||||
"tpage-265.go"
|
||||
"com-airlock-outer-ag.go"
|
||||
"broken-mdaxter-ag.go"
|
||||
"barge-ag.go"
|
||||
"mecha-daxter-ag.go"
|
||||
"air-train-ag.go"
|
||||
"hip-door-a-ag.go"
|
||||
"ctyport-vis.o"
|
||||
))
|
11
goal_src/jak3/dgos/cta.gd
Normal file
11
goal_src/jak3/dgos/cta.gd
Normal file
@ -0,0 +1,11 @@
|
||||
("CTA.DGO"
|
||||
("des-burning-bush.o"
|
||||
"ctysluma-part.o"
|
||||
"neon-baron-part.o"
|
||||
"tpage-136.go"
|
||||
"tpage-135.go"
|
||||
"tpage-133.go"
|
||||
"tpage-131.go"
|
||||
"des-burning-bush-ag.go"
|
||||
"ctysluma-vis.o"
|
||||
))
|
10
goal_src/jak3/dgos/ctb.gd
Normal file
10
goal_src/jak3/dgos/ctb.gd
Normal file
@ -0,0 +1,10 @@
|
||||
("CTB.DGO"
|
||||
("ctyslumb-part.o"
|
||||
"tpage-166.go"
|
||||
"tpage-165.go"
|
||||
"tpage-1743.go"
|
||||
"tpage-162.go"
|
||||
"tpage-159.go"
|
||||
"cty-door-ag.go"
|
||||
"ctyslumb-vis.o"
|
||||
))
|
13
goal_src/jak3/dgos/ctc.gd
Normal file
13
goal_src/jak3/dgos/ctc.gd
Normal file
@ -0,0 +1,13 @@
|
||||
("CTC.DGO"
|
||||
("ctyslumc-part.o"
|
||||
"ctyslumc-obs.o"
|
||||
"tpage-174.go"
|
||||
"tpage-173.go"
|
||||
"tpage-1505.go"
|
||||
"tpage-170.go"
|
||||
"tpage-167.go"
|
||||
"cty-door-ag.go"
|
||||
"cty-elevator-ag.go"
|
||||
"ctyslumc-flag-ag.go"
|
||||
"ctyslumc-vis.o"
|
||||
))
|
7
goal_src/jak3/dgos/ctycara.gd
Normal file
7
goal_src/jak3/dgos/ctycara.gd
Normal file
@ -0,0 +1,7 @@
|
||||
("CTYCARA.DGO"
|
||||
("tpage-948.o"
|
||||
"carc-ag.go"
|
||||
"cara-ag.go"
|
||||
"carb-ag.go"
|
||||
"ctycara.o"
|
||||
))
|
7
goal_src/jak3/dgos/ctycarb.gd
Normal file
7
goal_src/jak3/dgos/ctycarb.gd
Normal file
@ -0,0 +1,7 @@
|
||||
("CTYCARB.DGO"
|
||||
("tpage-949.o"
|
||||
"bikec-ag.go"
|
||||
"bikeb-ag.go"
|
||||
"bikea-ag.go"
|
||||
"ctycarb.o"
|
||||
))
|
6
goal_src/jak3/dgos/ctycarc.gd
Normal file
6
goal_src/jak3/dgos/ctycarc.gd
Normal file
@ -0,0 +1,6 @@
|
||||
("CTYCARC.DGO"
|
||||
("tpage-950.o"
|
||||
"tpage-951.go"
|
||||
"hellcat-ag.go"
|
||||
"ctycarc.o"
|
||||
))
|
3
goal_src/jak3/dgos/ctycarkg.gd
Normal file
3
goal_src/jak3/dgos/ctycarkg.gd
Normal file
@ -0,0 +1,3 @@
|
||||
("CTYCARKG.DGO"
|
||||
("ctycarkg.o"
|
||||
))
|
7
goal_src/jak3/dgos/ctypepa.gd
Normal file
7
goal_src/jak3/dgos/ctypepa.gd
Normal file
@ -0,0 +1,7 @@
|
||||
("CTYPEPA.DGO"
|
||||
("tpage-956.o"
|
||||
"citizen-fat-ag.go"
|
||||
"citizen-norm-ag.go"
|
||||
"citizen-chick-ag.go"
|
||||
"ctypepa.o"
|
||||
))
|
5
goal_src/jak3/dgos/ctypepb.gd
Normal file
5
goal_src/jak3/dgos/ctypepb.gd
Normal file
@ -0,0 +1,5 @@
|
||||
("CTYPEPB.DGO"
|
||||
("tpage-958.o"
|
||||
"predator-ag.go"
|
||||
"ctypepb.o"
|
||||
))
|
3
goal_src/jak3/dgos/ctypepc.gd
Normal file
3
goal_src/jak3/dgos/ctypepc.gd
Normal file
@ -0,0 +1,3 @@
|
||||
("CTYPEPC.DGO"
|
||||
("ctypepc.o"
|
||||
))
|
8
goal_src/jak3/dgos/ctypesa.gd
Normal file
8
goal_src/jak3/dgos/ctypesa.gd
Normal file
@ -0,0 +1,8 @@
|
||||
("CTYPESA.DGO"
|
||||
("tpage-957.o"
|
||||
"crimson-guard-ag.go"
|
||||
"shield-sphere-explode-ag.go"
|
||||
"shield-sphere-distort-ag.go"
|
||||
"shield-sphere-ag.go"
|
||||
"ctypesa.o"
|
||||
))
|
8
goal_src/jak3/dgos/ctypesb.gd
Normal file
8
goal_src/jak3/dgos/ctypesb.gd
Normal file
@ -0,0 +1,8 @@
|
||||
("CTYPESB.DGO"
|
||||
("metalhead-grunt.o"
|
||||
"metalhead-predator.o"
|
||||
"tpage-1758.go"
|
||||
"city-grunt-ag.go"
|
||||
"city-flitter-ag.go"
|
||||
"ctypesb.o"
|
||||
))
|
11
goal_src/jak3/dgos/ctypesc.gd
Normal file
11
goal_src/jak3/dgos/ctypesc.gd
Normal file
@ -0,0 +1,11 @@
|
||||
("CTYPESC.DGO"
|
||||
("roboguard-city.o"
|
||||
"spydroid.o"
|
||||
"flying-turret.o"
|
||||
"tpage-1244.go"
|
||||
"roboguard-city-ag.go"
|
||||
"spydroid-ag.go"
|
||||
"kg-flying-turret-ag.go"
|
||||
"kg-debris-ag.go"
|
||||
"ctypesc.o"
|
||||
))
|
105
goal_src/jak3/dgos/cwi.gd
Normal file
105
goal_src/jak3/dgos/cwi.gd
Normal file
@ -0,0 +1,105 @@
|
||||
("CWI.DGO"
|
||||
("squad-control-h.o"
|
||||
"squad-control.o"
|
||||
"vehicle-h.o"
|
||||
"vehicle-part.o"
|
||||
"vehicle-effects.o"
|
||||
"vehicle.o"
|
||||
"vehicle-util.o"
|
||||
"vehicle-physics.o"
|
||||
"vehicle-states.o"
|
||||
"vehicle-manager.o"
|
||||
"vehicle-hud.o"
|
||||
"turret-control.o"
|
||||
"target-pilot.o"
|
||||
"pilot-states.o"
|
||||
"nav-graph-h.o"
|
||||
"cty-borrow-manager-h.o"
|
||||
"cty-faction-h.o"
|
||||
"traffic-engine-h.o"
|
||||
"height-map-h.o"
|
||||
"vehicle-control.o"
|
||||
"nav-graph.o"
|
||||
"height-map.o"
|
||||
"traffic-height-map.o"
|
||||
"hvehicle-h.o"
|
||||
"vehicle-rider.o"
|
||||
"hvehicle.o"
|
||||
"hvehicle-util.o"
|
||||
"hvehicle-effects.o"
|
||||
"hvehicle-physics.o"
|
||||
"mission-squad-control-h.o"
|
||||
"citizen-h.o"
|
||||
"squad-control-city-h.o"
|
||||
"squad-control-city.o"
|
||||
"kg-squad-control-h.o"
|
||||
"ff-squad-control-h.o"
|
||||
"mh-squad-control-h.o"
|
||||
"cty-faction.o"
|
||||
"formations.o"
|
||||
"formation-object.o"
|
||||
"ctywide-obs-h.o"
|
||||
"mission-squad-control.o"
|
||||
"cty-attack-controller.o"
|
||||
"flee-info.o"
|
||||
"citizen.o"
|
||||
"civilian.o"
|
||||
"guard-h.o"
|
||||
"traffic-util.o"
|
||||
"traffic-engine.o"
|
||||
"traffic-manager.o"
|
||||
"cty-guard-projectile.o"
|
||||
"trail-graph.o"
|
||||
"bike.o"
|
||||
"car.o"
|
||||
"test-bike.o"
|
||||
"citizen-enemy.o"
|
||||
"kg-squad-member-h.o"
|
||||
"mh-squad-member-h.o"
|
||||
"guard.o"
|
||||
"guard-grenade.o"
|
||||
"guard-tazer.o"
|
||||
"guard-rifle.o"
|
||||
"guard-states.o"
|
||||
"citizen-norm.o"
|
||||
"citizen-fat.o"
|
||||
"citizen-chick.o"
|
||||
"kg-squad-member.o"
|
||||
"mh-squad-member.o"
|
||||
"metalhead-flitter.o"
|
||||
"kg-squad-control.o"
|
||||
"ff-squad-control.o"
|
||||
"mh-squad-control.o"
|
||||
"cty-borrow-manager.o"
|
||||
"ctywide-init.o"
|
||||
"ctywide-texture.o"
|
||||
"ctywide-part.o"
|
||||
"ctywide-obs.o"
|
||||
"ctywide-tasks.o"
|
||||
"ctywide-scenes.o"
|
||||
"ctywide-speech.o"
|
||||
"ctyport-obs.o"
|
||||
"mhcity-part.o"
|
||||
"mhcity-obs.o"
|
||||
"mhcity-obs2.o"
|
||||
"krimson-wall.o"
|
||||
"trail.o"
|
||||
"searchlight.o"
|
||||
"jak-pilot+0-ag.go"
|
||||
"jak-pilot-hcar+0-ag.go"
|
||||
"jak-pilot-gun+0-ag.go"
|
||||
"tpage-127.go"
|
||||
"tpage-125.go"
|
||||
"tpage-128.go"
|
||||
"tpage-123.go"
|
||||
"citizen-norm-rider-ag.go"
|
||||
"fac-lorez-ag.go"
|
||||
"vehicle-explosion-ag.go"
|
||||
"newbike-ag.go"
|
||||
"ctycrate-ag.go"
|
||||
"eco-canister-ag.go"
|
||||
"searchlight-ag.go"
|
||||
"burning-bush-ag.go"
|
||||
"security-wall-ag.go"
|
||||
"ctywide-vis.o"
|
||||
))
|
7
goal_src/jak3/dgos/desa.gd
Normal file
7
goal_src/jak3/dgos/desa.gd
Normal file
@ -0,0 +1,7 @@
|
||||
("DESA.DGO"
|
||||
("tpage-1372.o"
|
||||
"tpage-3309.go"
|
||||
"tpage-1579.go"
|
||||
"jakc-scarf-ag.go"
|
||||
"deserta-vis.o"
|
||||
))
|
8
goal_src/jak3/dgos/desb.gd
Normal file
8
goal_src/jak3/dgos/desb.gd
Normal file
@ -0,0 +1,8 @@
|
||||
("DESB.DGO"
|
||||
("tpage-1377.o"
|
||||
"tpage-1378.go"
|
||||
"tpage-1379.go"
|
||||
"wascity-airlock-ag.go"
|
||||
"air-train-ag.go"
|
||||
"desertb-vis.o"
|
||||
))
|
21
goal_src/jak3/dgos/desbattl.gd
Normal file
21
goal_src/jak3/dgos/desbattl.gd
Normal file
@ -0,0 +1,21 @@
|
||||
("DESBATTL.DGO"
|
||||
("target-turret-shot.o"
|
||||
"target-turret.o"
|
||||
"jak-turret+0-ag.go"
|
||||
"desbeast-path-h.o"
|
||||
"desbeast-path.o"
|
||||
"des-beast.o"
|
||||
"mh-flyer.o"
|
||||
"des-beast-2.o"
|
||||
"beast-battle-path.o"
|
||||
"scorpion-gun.o"
|
||||
"tpage-1853.go"
|
||||
"tpage-2173.go"
|
||||
"tpage-2406.go"
|
||||
"des-beast-ag.go"
|
||||
"mh-flyer-ag.go"
|
||||
"scorpion-gun-ag.go"
|
||||
"quantum-reflector-ag.go"
|
||||
"mh-flyer-missile-ag.go"
|
||||
"desbattl.o"
|
||||
))
|
15
goal_src/jak3/dgos/desbcst.gd
Normal file
15
goal_src/jak3/dgos/desbcst.gd
Normal file
@ -0,0 +1,15 @@
|
||||
("DESBCST.DGO"
|
||||
("tpage-2762.o"
|
||||
"tpage-2764.go"
|
||||
"tpage-2763.go"
|
||||
"daxter-highres-ag.go"
|
||||
"errol-ag.go"
|
||||
"jakc-highres-ag.go"
|
||||
"sig-highres-ag.go"
|
||||
"ashelin-highres-ag.go"
|
||||
"des-terraformer-break-ag.go"
|
||||
"snake-wheel-fma-ag.go"
|
||||
"particleman-ag.go"
|
||||
"jakc-scarf-ag.go"
|
||||
"desbcst.o"
|
||||
))
|
23
goal_src/jak3/dgos/desboss1.gd
Normal file
23
goal_src/jak3/dgos/desboss1.gd
Normal file
@ -0,0 +1,23 @@
|
||||
("DESBOSS1.DGO"
|
||||
("terraformer-drone.o"
|
||||
"terraformer-part.o"
|
||||
"terraformer-setup.o"
|
||||
"tpage-1756.go"
|
||||
"tpage-3172.go"
|
||||
"tpage-3176.go"
|
||||
"tpage-2643.go"
|
||||
"daxter-highres-ag.go"
|
||||
"jakc-highres-ag.go"
|
||||
"terraformer-leg-c-ag.go"
|
||||
"terraformer-head-ag.go"
|
||||
"terraformer-ag.go"
|
||||
"terraformer-leg-b-ag.go"
|
||||
"terraformer-leg-a-ag.go"
|
||||
"terraformer-spike-ag.go"
|
||||
"terraformer-drone-ag.go"
|
||||
"snake-wheel-fma-ag.go"
|
||||
"terraformer-mine-ag.go"
|
||||
"particleman-ag.go"
|
||||
"terraformer-target-ag.go"
|
||||
"desboss1.o"
|
||||
))
|
17
goal_src/jak3/dgos/desboss2.gd
Normal file
17
goal_src/jak3/dgos/desboss2.gd
Normal file
@ -0,0 +1,17 @@
|
||||
("DESBOSS2.DGO"
|
||||
("terraformer-drone.o"
|
||||
"terraformer-head.o"
|
||||
"tpage-2953.go"
|
||||
"tpage-3036.go"
|
||||
"tpage-3175.go"
|
||||
"daxter-highres-ag.go"
|
||||
"errol-ag.go"
|
||||
"jakc-highres-ag.go"
|
||||
"errol-lowres-ag.go"
|
||||
"terraformer-head-ag.go"
|
||||
"snake-wheel-fma-ag.go"
|
||||
"particleman-ag.go"
|
||||
"terraformer-laser-end-ag.go"
|
||||
"terraformer-laser-ag.go"
|
||||
"desboss2.o"
|
||||
))
|
5
goal_src/jak3/dgos/desc.gd
Normal file
5
goal_src/jak3/dgos/desc.gd
Normal file
@ -0,0 +1,5 @@
|
||||
("DESC.DGO"
|
||||
("tpage-1371.o"
|
||||
"tpage-1573.go"
|
||||
"desertc-vis.o"
|
||||
))
|
21
goal_src/jak3/dgos/deschase.gd
Normal file
21
goal_src/jak3/dgos/deschase.gd
Normal file
@ -0,0 +1,21 @@
|
||||
("DESCHASE.DGO"
|
||||
("marauder.o"
|
||||
"external-player-control.o"
|
||||
"wcar-catapult.o"
|
||||
"desert-jump.o"
|
||||
"wcar-marauder-b.o"
|
||||
"desert-chase-path-h.o"
|
||||
"desert-chase-path.o"
|
||||
"desert-chase.o"
|
||||
"tpage-3203.go"
|
||||
"tpage-2961.go"
|
||||
"tpage-2962.go"
|
||||
"tpage-3184.go"
|
||||
"marauder-male-ag.go"
|
||||
"catapult-ag.go"
|
||||
"interceptor-ag.go"
|
||||
"interceptor-b-ag.go"
|
||||
"pre-artifact-a-ag.go"
|
||||
"catapult-target-ag.go"
|
||||
"deschase.o"
|
||||
))
|
12
goal_src/jak3/dgos/desd.gd
Normal file
12
goal_src/jak3/dgos/desd.gd
Normal file
@ -0,0 +1,12 @@
|
||||
("DESD.DGO"
|
||||
("des-cactus.o"
|
||||
"desertd-obs.o"
|
||||
"desertd-texture.o"
|
||||
"tpage-1382.go"
|
||||
"tpage-1383.go"
|
||||
"tpage-1381.go"
|
||||
"tpage-3384.go"
|
||||
"des-cactus-b-ag.go"
|
||||
"des-cactus-a-ag.go"
|
||||
"desertd-vis.o"
|
||||
))
|
5
goal_src/jak3/dgos/dese.gd
Normal file
5
goal_src/jak3/dgos/dese.gd
Normal file
@ -0,0 +1,5 @@
|
||||
("DESE.DGO"
|
||||
("tpage-1380.o"
|
||||
"tpage-1597.go"
|
||||
"deserte-vis.o"
|
||||
))
|
6
goal_src/jak3/dgos/deserrol.gd
Normal file
6
goal_src/jak3/dgos/deserrol.gd
Normal file
@ -0,0 +1,6 @@
|
||||
("DESERROL.DGO"
|
||||
("tpage-3179.o"
|
||||
"tpage-3180.go"
|
||||
"errol-ag.go"
|
||||
"deserrol.o"
|
||||
))
|
10
goal_src/jak3/dgos/desf.gd
Normal file
10
goal_src/jak3/dgos/desf.gd
Normal file
@ -0,0 +1,10 @@
|
||||
("DESF.DGO"
|
||||
("desertf-obs.o"
|
||||
"tpage-1384.go"
|
||||
"tpage-2844.go"
|
||||
"tpage-2871.go"
|
||||
"des-draw-bridge-ag.go"
|
||||
"des-jump-bridge-ag.go"
|
||||
"des-garage-door-ag.go"
|
||||
"desertf-vis.o"
|
||||
))
|
12
goal_src/jak3/dgos/desg.gd
Normal file
12
goal_src/jak3/dgos/desg.gd
Normal file
@ -0,0 +1,12 @@
|
||||
("DESG.DGO"
|
||||
("elec-gate.o"
|
||||
"desertg-obs.o"
|
||||
"tpage-1373.go"
|
||||
"tpage-1376.go"
|
||||
"tpage-1374.go"
|
||||
"tpage-3409.go"
|
||||
"desert-eggwall-ag.go"
|
||||
"des-cactus-obstacle-ag.go"
|
||||
"particleman-ag.go"
|
||||
"desertg-vis.o"
|
||||
))
|
5
goal_src/jak3/dgos/desh.gd
Normal file
5
goal_src/jak3/dgos/desh.gd
Normal file
@ -0,0 +1,5 @@
|
||||
("DESH.DGO"
|
||||
("tpage-1385.o"
|
||||
"tpage-1995.go"
|
||||
"deserth-vis.o"
|
||||
))
|
23
goal_src/jak3/dgos/deshover.gd
Normal file
23
goal_src/jak3/dgos/deshover.gd
Normal file
@ -0,0 +1,23 @@
|
||||
("DESHOVER.DGO"
|
||||
("desbeast-path-h.o"
|
||||
"desbeast-path.o"
|
||||
"des-beast.o"
|
||||
"desert-hover.o"
|
||||
"deshover-texture.o"
|
||||
"tpage-1920.go"
|
||||
"tpage-1598.go"
|
||||
"tpage-1935.go"
|
||||
"tpage-1989.go"
|
||||
"tpage-1998.go"
|
||||
"tpage-2727.go"
|
||||
"des-beast-ag.go"
|
||||
"daxter-highres-ag.go"
|
||||
"jakc-highres-ag.go"
|
||||
"beast-rider-ag.go"
|
||||
"errol-effect-ag.go"
|
||||
"mh-communicator-ag.go"
|
||||
"snake-wheel-fma-ag.go"
|
||||
"eco-crystal-dark-ag.go"
|
||||
"particleman-ag.go"
|
||||
"deshover.o"
|
||||
))
|
6
goal_src/jak3/dgos/deshunt.gd
Normal file
6
goal_src/jak3/dgos/deshunt.gd
Normal file
@ -0,0 +1,6 @@
|
||||
("DESHUNT.DGO"
|
||||
("tpage-1809.o"
|
||||
"tpage-1808.go"
|
||||
"sig-highres-ag.go"
|
||||
"deshunt.o"
|
||||
))
|
7
goal_src/jak3/dgos/desinter.gd
Normal file
7
goal_src/jak3/dgos/desinter.gd
Normal file
@ -0,0 +1,7 @@
|
||||
("DESINTER.DGO"
|
||||
("tpage-1712.o"
|
||||
"tpage-1713.go"
|
||||
"interceptor-ag.go"
|
||||
"interceptor-b-ag.go"
|
||||
"desinter.o"
|
||||
))
|
13
goal_src/jak3/dgos/desjump.gd
Normal file
13
goal_src/jak3/dgos/desjump.gd
Normal file
@ -0,0 +1,13 @@
|
||||
("DESJUMP.DGO"
|
||||
("wcar-catapult.o"
|
||||
"desert-jump.o"
|
||||
"tpage-3220.go"
|
||||
"tpage-2768.go"
|
||||
"tpage-2769.go"
|
||||
"tpage-2766.go"
|
||||
"catapult-ag.go"
|
||||
"interceptor-ag.go"
|
||||
"wascity-airlock-debris-ag.go"
|
||||
"beam-generator-ag.go"
|
||||
"desjump.o"
|
||||
))
|
18
goal_src/jak3/dgos/desliz.gd
Normal file
18
goal_src/jak3/dgos/desliz.gd
Normal file
@ -0,0 +1,18 @@
|
||||
("DESLIZ.DGO"
|
||||
("flut-part.o"
|
||||
"flut.o"
|
||||
"target-flut.o"
|
||||
"jak-fldax+0-ag.go"
|
||||
"desert-lizard-h.o"
|
||||
"desert-lizard-task.o"
|
||||
"desert-lizard.o"
|
||||
"tpage-1624.go"
|
||||
"tpage-1654.go"
|
||||
"daxter-highres-ag.go"
|
||||
"kleever-highres-ag.go"
|
||||
"jakc-highres-ag.go"
|
||||
"flut-saddle-ag.go"
|
||||
"snake-wheel-fma-ag.go"
|
||||
"particleman-ag.go"
|
||||
"desliz.o"
|
||||
))
|
26
goal_src/jak3/dgos/desoasis.gd
Normal file
26
goal_src/jak3/dgos/desoasis.gd
Normal file
@ -0,0 +1,26 @@
|
||||
("DESOASIS.DGO"
|
||||
("ai-task-h.o"
|
||||
"simple-focus.o"
|
||||
"bot-h.o"
|
||||
"bot.o"
|
||||
"bot-states.o"
|
||||
"ash-h.o"
|
||||
"ash-task.o"
|
||||
"ash-shot.o"
|
||||
"ash.o"
|
||||
"ash-states.o"
|
||||
"marauder.o"
|
||||
"oasis-defense.o"
|
||||
"ash-oasis-course.o"
|
||||
"tpage-1603.go"
|
||||
"tpage-2114.go"
|
||||
"tpage-1605.go"
|
||||
"tpage-2408.go"
|
||||
"ashelin-highres-ag.go"
|
||||
"ashelin-ag.go"
|
||||
"marauder-male-ag.go"
|
||||
"hellcat-ag.go"
|
||||
"interceptor-ag.go"
|
||||
"interceptor-b-ag.go"
|
||||
"desoasis.o"
|
||||
))
|
15
goal_src/jak3/dgos/desrace1.gd
Normal file
15
goal_src/jak3/dgos/desrace1.gd
Normal file
@ -0,0 +1,15 @@
|
||||
("DESRACE1.DGO"
|
||||
("artifact-race.o"
|
||||
"tpage-1418.go"
|
||||
"tpage-1300.go"
|
||||
"tpage-1399.go"
|
||||
"interceptor-ag.go"
|
||||
"interceptor-b-ag.go"
|
||||
"gauntlets-ag.go"
|
||||
"pre-artifact-a-ag.go"
|
||||
"pre-artifact-d-ag.go"
|
||||
"pre-artifact-b-ag.go"
|
||||
"pre-artifact-c-ag.go"
|
||||
"was-artifact-ag.go"
|
||||
"desrace1.o"
|
||||
))
|
8
goal_src/jak3/dgos/desrace2.gd
Normal file
8
goal_src/jak3/dgos/desrace2.gd
Normal file
@ -0,0 +1,8 @@
|
||||
("DESRACE2.DGO"
|
||||
("artifact-race.o"
|
||||
"tpage-1408.go"
|
||||
"tpage-1409.go"
|
||||
"interceptor-ag.go"
|
||||
"interceptor-b-ag.go"
|
||||
"desrace2.o"
|
||||
))
|
20
goal_src/jak3/dgos/desrally.gd
Normal file
20
goal_src/jak3/dgos/desrally.gd
Normal file
@ -0,0 +1,20 @@
|
||||
("DESRALLY.DGO"
|
||||
("race-h.o"
|
||||
"race-mesh.o"
|
||||
"race-control.o"
|
||||
"race-info.o"
|
||||
"race-manager.o"
|
||||
"race-hud.o"
|
||||
"pilot-recorder.o"
|
||||
"turtle-training.o"
|
||||
"kleever-rider.o"
|
||||
"course-race.o"
|
||||
"tpage-2892.go"
|
||||
"tpage-2893.go"
|
||||
"tpage-2976.go"
|
||||
"wland-driver-ag.go"
|
||||
"interceptor-ag.go"
|
||||
"interceptor-b-ag.go"
|
||||
"des-rally-bollard-ag.go"
|
||||
"desrally.o"
|
||||
))
|
51
goal_src/jak3/dgos/desresc.gd
Normal file
51
goal_src/jak3/dgos/desresc.gd
Normal file
@ -0,0 +1,51 @@
|
||||
("DESRESC.DGO"
|
||||
("nav-graph-h.o"
|
||||
"cty-borrow-manager-h.o"
|
||||
"cty-faction-h.o"
|
||||
"traffic-engine-h.o"
|
||||
"height-map-h.o"
|
||||
"vehicle-control.o"
|
||||
"nav-graph.o"
|
||||
"mission-squad-control-h.o"
|
||||
"citizen-h.o"
|
||||
"squad-control-city-h.o"
|
||||
"squad-control-city.o"
|
||||
"kg-squad-control-h.o"
|
||||
"ff-squad-control-h.o"
|
||||
"mh-squad-control-h.o"
|
||||
"cty-faction.o"
|
||||
"formations.o"
|
||||
"formation-object.o"
|
||||
"ctywide-obs-h.o"
|
||||
"mission-squad-control.o"
|
||||
"cty-attack-controller.o"
|
||||
"flee-info.o"
|
||||
"citizen.o"
|
||||
"civilian.o"
|
||||
"guard-h.o"
|
||||
"traffic-util.o"
|
||||
"traffic-engine.o"
|
||||
"traffic-manager.o"
|
||||
"desresc-path.o"
|
||||
"desresc-texture.o"
|
||||
"desert-rescue.o"
|
||||
"desert-rescue-bbush.o"
|
||||
"wland-passenger.o"
|
||||
"rope-system-h.o"
|
||||
"rope-system.o"
|
||||
"rope-prim-system-h.o"
|
||||
"rope-prim-system.o"
|
||||
"neo-satellite.o"
|
||||
"tpage-1599.go"
|
||||
"tpage-1625.go"
|
||||
"tpage-1731.go"
|
||||
"wlander-male-ag.go"
|
||||
"wland-passenger-ag.go"
|
||||
"neo-satellite-ag.go"
|
||||
"neo-satellite-c-ag.go"
|
||||
"neo-satellite-a-ag.go"
|
||||
"neo-satellite-b-ag.go"
|
||||
"eco-crystal-dark-ag.go"
|
||||
"neo-satellite-shield-ag.go"
|
||||
"desresc.o"
|
||||
))
|
6
goal_src/jak3/dgos/desrescc.gd
Normal file
6
goal_src/jak3/dgos/desrescc.gd
Normal file
@ -0,0 +1,6 @@
|
||||
("DESRESCC.DGO"
|
||||
("tpage-1717.o"
|
||||
"daxter-highres-ag.go"
|
||||
"jakc-highres-ag.go"
|
||||
"desrescc.o"
|
||||
))
|
8
goal_src/jak3/dgos/desrescg.gd
Normal file
8
goal_src/jak3/dgos/desrescg.gd
Normal file
@ -0,0 +1,8 @@
|
||||
("DESRESCG.DGO"
|
||||
("tpage-1715.o"
|
||||
"tpage-1716.go"
|
||||
"interceptor-ag.go"
|
||||
"desert-transport-ag.go"
|
||||
"interceptor-b-ag.go"
|
||||
"desrescg.o"
|
||||
))
|
26
goal_src/jak3/dgos/destrack.gd
Normal file
26
goal_src/jak3/dgos/destrack.gd
Normal file
@ -0,0 +1,26 @@
|
||||
("DESTRACK.DGO"
|
||||
("race-h.o"
|
||||
"race-mesh.o"
|
||||
"race-control.o"
|
||||
"race-info.o"
|
||||
"race-manager.o"
|
||||
"race-hud.o"
|
||||
"pilot-recorder.o"
|
||||
"turtle-training.o"
|
||||
"kleever-rider.o"
|
||||
"course-race.o"
|
||||
"tpage-1795.go"
|
||||
"tpage-1796.go"
|
||||
"tpage-2363.go"
|
||||
"tpage-1666.go"
|
||||
"daxter-highres-ag.go"
|
||||
"jakc-highres-ag.go"
|
||||
"wland-driver-ag.go"
|
||||
"interceptor-ag.go"
|
||||
"kleever-rider-ag.go"
|
||||
"interceptor-b-ag.go"
|
||||
"des-train-barrier-ag.go"
|
||||
"des-train-stones-ag.go"
|
||||
"des-train-bollard-ag.go"
|
||||
"destrack.o"
|
||||
))
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue
Block a user