Skip to content

Commit

Permalink
Backwards-compatible tile mappings, tile converters, tile and texture…
Browse files Browse the repository at this point in the history
… deprecation (#2671)

**Reverts the tile IDs** in `tiles.strf` to ones, compatible with the old tile mappings, before the full tile overhaul. Any old tiles, which do not have a respective new version, are now marked as deprecated.

**Tile converters** can now be used to convert all tiles on all tilemaps in a level, from the editor. Contains two stock tile converters (0.5.x Crystal Tiles, Nightly Tiles -> Present), and a new tile conversions menu (accessible from the main level editor menu). The "Nightly Tiles" converter allows for converting from the current Nightly Builds mapping, to this new, final one. The tiles of the main menu and credits levels are converted in this PR.

Introduces **tile deprecation** and various editor locks to prevent using such tiles, as well as show whether/where such tiles are present in a level.

Additionally introduces **texture deprecation**. Any image files, containing `.deprecated` right before the extension in their filename will be used, whenever the main texture (the one, which doesn't contain the `.deprecated` part in its filename) does not exist, taking its place. Deprecated files do not show up on the file browsing menu.

-----

Huge thanks to [Semphris](https://github.com/Semphriss) for all the initial work on this, including quite a lot of tile re-mapping, organizing the full workflow, as well as the initial process of auto-generating new tile IDs and creating converters, and the implementation of the tile conversion algorithm.

Fixes #2306.
  • Loading branch information
Vankata453 committed Dec 10, 2023
1 parent 6dabf17 commit 517005b
Show file tree
Hide file tree
Showing 323 changed files with 9,829 additions and 8,284 deletions.
6,295 changes: 1,473 additions & 4,822 deletions data/images/autotiles.satc

Large diffs are not rendered by default.

Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
201 changes: 201 additions & 0 deletions data/images/converters/051_crystal_tiles.sttc
Original file line number Diff line number Diff line change
@@ -0,0 +1,201 @@
2421 -> 4814
2435 -> 4824
2449 -> 4834
2463 -> 4749
2477 -> 4762
2491 -> 4844
2505 -> 4854
2422 -> 4815
2436 -> 4825
2450 -> 4835
2464 -> 4750
2478 -> 4763
2492 -> 4845
2506 -> 4855
2423 -> 4724
2437 -> 4737
2451 -> 4750
2465 -> 4750
2479 -> 4763
2493 -> 4763
2507 -> 4776
2424 -> 4725
2438 -> 4738
2452 -> 4751
2466 -> 4751
2480 -> 4764
2494 -> 4764
2508 -> 4777
2425 -> 4816
2439 -> 4826
2453 -> 4836
2467 -> 4751
2481 -> 4764
2495 -> 4846
2509 -> 4856
2426 -> 4817
2440 -> 4827
2454 -> 4837
2468 -> 4752
2482 -> 4765
2496 -> 4847
2510 -> 4857
2551 -> 0
2567 -> 0
2583 -> 4732
2599 -> 4745
2615 -> 4758
2631 -> 4750
2523 -> 4763
2539 -> 4771
2555 -> 4784
2571 -> 4797
2587 -> 4810
2603 -> 0
2552 -> 4732
2568 -> 4745
2584 -> 4758
2600 -> 4750
2616 -> 4763
2632 -> 4750
2524 -> 4763
2540 -> 4750
2556 -> 4763
2572 -> 4771
2588 -> 4784
2604 -> 4797
2553 -> 4733
2569 -> 4746
2585 -> 4759
2601 -> 4751
2617 -> 4764
2633 -> 4751
2525 -> 4764
2541 -> 4751
2557 -> 4764
2573 -> 4772
2589 -> 4785
2605 -> 4798
2554 -> 0
2570 -> 0
2586 -> 4733
2602 -> 4746
2618 -> 4759
2634 -> 4751
2526 -> 4764
2542 -> 4772
2558 -> 4785
2574 -> 4798
2590 -> 4811
2606 -> 0
2417 -> 0
2431 -> 4734
2445 -> 4747
2459 -> 4750
2527 -> 4763
2543 -> 4760
2559 -> 4773
2575 -> 4786
2418 -> 4734
2432 -> 4747
2446 -> 4750
2460 -> 4750
2528 -> 4763
2544 -> 4763
2560 -> 4760
2576 -> 4773
2419 -> 4735
2433 -> 4748
2447 -> 4751
2461 -> 4751
2529 -> 4764
2545 -> 4764
2561 -> 4761
2577 -> 4774
2420 -> 0
2434 -> 4735
2448 -> 4748
2462 -> 4751
2530 -> 4764
2546 -> 4761
2562 -> 4774
2578 -> 4787
2473 -> 0
2487 -> 4728
2501 -> 4741
2515 -> 4750
2531 -> 4763
2547 -> 4754
2563 -> 4767
2474 -> 0
2488 -> 4729
2502 -> 4742
2516 -> 4750
2532 -> 4763
2548 -> 4755
2564 -> 4768
2475 -> 0
2489 -> 4730
2503 -> 4743
2517 -> 4751
2533 -> 4764
2549 -> 4756
2565 -> 4769
2476 -> 0
2490 -> 4731
2504 -> 4744
2518 -> 4751
2534 -> 4764
2550 -> 4757
2566 -> 4770
2413 -> 4762
2427 -> 4727
2441 -> 4750
2455 -> 4750
2469 -> 4763
2483 -> 4740
2497 -> 4749
2511 -> 4762
2414 -> 4750
2428 -> 4750
2442 -> 4763
2456 -> 4750
2470 -> 4763
2484 -> 4750
2498 -> 4763
2512 -> 4763
2415 -> 4751
2429 -> 4751
2443 -> 4764
2457 -> 4751
2471 -> 4764
2485 -> 4751
2499 -> 4764
2513 -> 4764
2416 -> 4752
2430 -> 4765
2444 -> 4753
2458 -> 4751
2472 -> 4764
2486 -> 4766
2500 -> 4752
2514 -> 4765
2647 -> 4895
2651 -> 4901
2655 -> 4894
2659 -> 4900
2663 -> 4897
2666 -> 4903
2648 -> 4909
2652 -> 4915
2656 -> 4896
2660 -> 4902
2664 -> 4898
2667 -> 4904
2657 -> 4906
2661 -> 4912
2665 -> 4899
2668 -> 4905
2658 -> 4907
2662 -> 4913

10 changes: 10 additions & 0 deletions data/images/converters/data.stcd
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
(supertux-converter-data
(nightly_all_tiles.sttc
(title (_ "Nightly Tiles"))
(description (_ "Levels, created in previous Nightly builds, have their tiles broken. Use this converter to restore all tiles in the level to their proper state!"))
)
(051_crystal_tiles.sttc
(title (_ "0.5.x Crystal Tiles"))
(description (_ "Levels, created in pre-0.6.3 versions, which use crystal tiles, have their crystal tiles broken. Use this converter to restore all crystal tiles in the level to their proper state!"))
)
)

0 comments on commit 517005b

Please sign in to comment.