about summary refs log tree commit diff stats
path: root/tools
Commit message (Collapse)AuthorAgeFilesLines
* Added display names to portsStar Rauchenberger2025-09-281-0/+1
|
* [Tools] Typo in header guardStar Rauchenberger2025-09-221-1/+1
|
* [Data] Annotate shuffleable portsStar Rauchenberger2025-09-212-1/+22
|
* Added strict purple/cyan ending optionsStar Rauchenberger2025-09-191-0/+10
|
* Add anti-collectable locationStar Rauchenberger2025-09-131-0/+3
|
* [Data] Allow WALL solution to the_entry!OPENStar Rauchenberger2025-09-111-1/+2
|
* [Data] Fixed connection target required door logic bugsStar Rauchenberger2025-09-113-4/+73
|
* [Data] Add version numberStar Rauchenberger2025-09-101-0/+10
|
* Added symbol shuffleStar Rauchenberger2025-09-091-0/+18
| | | | | Also fixed unlocked letters + any double letter cyan doors, and tweaked some logic related to important panels with symbols on them.
* Downgrade protobufStar Rauchenberger2025-09-082-4/+3
| | | | This allows the generated Python file to be compatible with the frozen Archipelago install.
* Added lavender cubes logicStar Rauchenberger2025-09-081-3/+0
|
* Added door groupsStar Rauchenberger2025-09-078-0/+153
|
* [Data] Strip unnecessary AP IDsStar Rauchenberger2025-09-044-20/+208
| | | | This was causing issues in the client, specifically for The Ancient.
* Added option for Daedalus roof access logicStar Rauchenberger2025-09-031-0/+5
|
* Added keyholder sanityStar Rauchenberger2025-09-023-0/+50
|
* Added progressive doorsStar Rauchenberger2025-09-018-35/+146
|
* Handled cyan doorsStar Rauchenberger2025-08-312-0/+13
|
* Changed how door location names are formattedStar Rauchenberger2025-08-305-215/+328
| | | | | | | | | | | | | | | | | | STANDARD type doors with at most four panels in the same map area and no other trigger objects will have their location names generated from the names of the panels used to open the door, similar to Lingo 1. Other door types will use the door's name. In either case, the name can be overridden using the new location_name field. Rooms can also set a panel_display_name field, which will be used in location names for doors, and is used to group panels into areas. Panels themselves can set display names, which differentiates their locations from other panels in the same area. Many maps were updated for this, but note that the_symbolic and the_unyielding have validator failures because of duplicate panel names. This won't matter until panelsanity is implemented.
* [Data] Made proxies with the same answer as the panel explicitStar Rauchenberger2025-08-301-1/+0
|
* Renamed Painting and Keyholder protosStar Rauchenberger2025-08-272-4/+4
|
* Prevent assigning ap_id==0Star Rauchenberger2025-08-271-1/+1
|
* Added control_centerStar Rauchenberger2025-08-274-1/+21
|
* Added daedalusStar Rauchenberger2025-08-241-0/+5
|
* Maps have display names nowStar Rauchenberger2025-08-201-0/+17
| | | | Also added endings to the apworld.
* Added "endings" object typeStar Rauchenberger2025-08-208-1/+105
|
* Store IDs in a yaml fileStar Rauchenberger2025-08-195-12/+169
| | | | This is much more efficient than the txtpb format, and we only need an interface for it in C++ since the IDs will be packed into the binary proto representation.
* Added the_repetitiveStar Rauchenberger2025-08-183-114/+40
|
* Validate that nodes in game files are usedStar Rauchenberger2025-08-1810-4/+459
| | | | You can now also list out nodes that you are explicitly not mapping out. The current state of the repo does produce some warnings when the validator is run and they're either endings, paintings that I'm not sure what to do with yet, and weird proxy stuff I'm not sure how to handle yet.
* Validate that node paths aren't used multiple timesStar Rauchenberger2025-08-173-1/+40
|
* Minor changes for compiling on WindowsStar Rauchenberger2025-08-163-3/+3
|
* Started writing a data validatorStar Rauchenberger2025-08-1612-0/+1040
| | | | | | | Currently, it can check whether identifiers point to non-existent objects, or whether multiple objects share the same identifier. It can also determine whether an identifier is underspecified (e.g. a door doesn't specify a room, or a global connection doesn't specify a map).
* Assigned IDs for the_galleryStar Rauchenberger2025-08-131-0/+7
|
* Converted to proto2Star Rauchenberger2025-08-126-19/+18
| | | | | | | | | | | | | | | | | This will let us use an older version of protobuf in Python, and allows us to use the Godot protobuf implementation at all. Scalar fields with custom defaults in data.proto were changed to not have a default, because Godot doesn't handle it properly. The equivalent fields in human.proto still have the defaults, and datapacker copies the default value in if necessary. The Panel message in data.proto was also renamed to PanelData because otherwise it conflicts with the native Godot class named Panel. The double field in Letter was renamed to level2, because Godot couldn't handle it well. Finally, common.proto was removed and its contents were moved into data.proto, which allows us to generate code for Python without needing to edit it. NOTE: I had to slightly modify the Godot protobuf code generator. I'll need to upload that somewhere.
* Add gravity to paintings/portsStar Rauchenberger2025-08-111-2/+6
|
* Assigned IDs for the_congruentStar Rauchenberger2025-08-103-0/+91
| | | | | Keyholders are packed now. Doors can rely on keyholders and rooms. Paintings can be exit only.
* Assigned IDs for the_colorfulStar Rauchenberger2025-08-102-0/+21
| | | | | | Also fixed bug where the ID assigner didn't read letter and mastery IDs and would thus reuse them. I reassigned all IDs because of this (since we don't need to worry about ID stability yet).
* Added support for masteriesStar Rauchenberger2025-08-099-7/+196
| | | | | Also assigned IDs for the_butterfly, as well as already configured letters.
* Propagate complete_at to packed datafileStar Rauchenberger2025-08-091-2/+6
|
* Assigned IDs for the_bearerStar Rauchenberger2025-08-091-0/+4
| | | | | assign_ids now doesn't assign IDs for event doors, since they can't ever be locations or items.
* Added special IDsStar Rauchenberger2025-08-072-0/+13
|
* Assign AP IDs to doors and panelsStar Rauchenberger2025-08-073-0/+202
|
* Started apworldStar Rauchenberger2025-08-071-0/+8
| | | | | | | vcpkg's libprotobuf is older than what PIP has, but neither are completely up to date either. Ugh. Doors have a room now because that's where the location will go.
* Process the rest of the defined protosStar Rauchenberger2025-08-072-2/+200
|
* Protobuf works! Parsing connectionsStar Rauchenberger2025-08-074-3/+473
|
* Trying out protobuf I guessStar Rauchenberger2025-08-071-0/+21
860'>860 861 862 863 864 865 866 867 868 869 870 871 872 873 874 875 876 877 878 879 880 881 882 883 884 885 886 887 888 889 890 891 892 893 894 895 896 897 898 899 900 901 902 903 904 905 906 907 908 909 910 911 912 913 914 915 916 917 918 919 920 921 922 923 924 925 926 927 928 929 930 931 932 933 934 935 936 937 938 939 940 941 942 943 944 945 946 947 948 949 950 951 952 953 954 955 956 957 958 959 960 961 962 963 964 965 966 967 968 969 970 971 972 973 974 975 976 977 978 979 980 981 982 983 984 985 986 987 988 989 990 991 992 993 994 995 996 997 998 999 1000 1001 1002 1003 1004 1005 1006 1007 1008 1009 1010 1011 1012 1013 1014 1015 1016 1017 1018 1019 1020 1021 1022 1023 1024 1025 1026 1027 1028 1029 1030 1031 1032 1033 1034 1035 1036 1037 1038 1039 1040 1041 1042 1043 1044 1045 1046 1047 1048 1049 1050 1051 1052 1053 1054 1055 1056 1057 1058 1059 1060 1061 1062 1063 1064 1065 1066 1067 1068 1069 1070 1071 1072 1073 1074 1075 1076 1077 1078 1079 1080 1081 1082 1083 1084 1085 1086 1087 1088 1089 1090 1091 1092 1093 1094 1095 1096 1097 1098 1099 1100 1101 1102 1103 1104 1105 1106 1107 1108 1109 1110 1111 1112 1113 1114 1115 1116 1117 1118 1119 1120 1121 1122 1123 1124 1125 1126 1127 1128 1129 1130 1131 1132 1133 1134 1135 1136 1137 1138 1139 1140 1141 1142 1143 1144 1145 1146 1147 1148 1149 1150 1151 1152 1153 1154 1155 1156 1157 1158 1159 1160 1161 1162 1163 1164 1165 1166 1167 1168 1169 1170 1171 1172 1173 1174 1175 1176 1177 1178 1179 1180 1181 1182 1183 1184 1185 1186 1187 1188 1189 1190 1191 1192 1193