We are currently performing an upgrade to our software. This upgrade will bring MediaWiki from version 1.31 to 1.33. While the upgrade is being performed on your wiki it will be in read-only mode. For more information check here.

Feed The Beast Wiki talk:Tilesheet update guide

From Feed The Beast Wiki
Jump to: navigation, search

Windows[edit source]

Try out for 2 hours, I have no idea what to do yet. The program fails when compiling. I'm not a progammer .... can anyone help ?

Microsoft Windows [Version 6.1.7601]
Copyright (c) 2009 Microsoft Corporation. Alle Rechte vorbehalten.

D:\Daten\Rust\ftb-rs-master>set path=D:\Programme\Rust\bin

D:\Daten\Rust\ftb-rs-master>cargo build
   Compiling regex-syntax v0.2.2
   Compiling libc v0.1.10
   Compiling bitflags v0.3.2
   Compiling byteorder v0.3.13
   Compiling winapi v0.2.4
   Compiling memchr v0.1.6
   Compiling rustc-serialize v0.3.16
   Compiling aho-corasick v0.3.4
   Compiling winapi-build v0.1.1
   Compiling advapi32-sys v0.1.2
   Compiling regex v0.1.41
   Compiling glob v0.2.10
   Compiling rand v0.3.11
   Compiling gcc v0.3.19
   Compiling miniz-sys v0.1.6
   Compiling num v0.1.27
Build failed, waiting for other jobs to finish...
failed to run custom build command for `miniz-sys v0.1.6`
Process didn't exit successfully: `D:\Daten\Rust\ftb-rs-master\target\debug\buil
d\miniz-sys-6a96c81df5f9218f\build-script-build` (exit code: 101)
--- stdout
TARGET = Some("x86_64-pc-windows-gnu")
OPT_LEVEL = Some("0")
PROFILE = Some("debug")
TARGET = Some("x86_64-pc-windows-gnu")
debug=true opt-level=0
HOST = Some("x86_64-pc-windows-gnu")
TARGET = Some("x86_64-pc-windows-gnu")
TARGET = Some("x86_64-pc-windows-gnu")
HOST = Some("x86_64-pc-windows-gnu")
CC_x86_64-pc-windows-gnu = None
CC_x86_64_pc_windows_gnu = None
HOST_CC = None
CC = None
TARGET = Some("x86_64-pc-windows-gnu")
HOST = Some("x86_64-pc-windows-gnu")
CFLAGS_x86_64-pc-windows-gnu = None
CFLAGS_x86_64_pc_windows_gnu = None
HOST_CFLAGS = None
CFLAGS = None
running: "gcc.exe" "-O0" "-ffunction-sections" "-fdata-sections" "-g" "-m64" "-o
" "D:\\Daten\\Rust\\ftb-rs-master\\target\\debug\\build\\miniz-sys-6a96c81df5f92
18f\\out\\miniz.o" "-c" "miniz.c"
ExitStatus(ExitStatus(1))


command did not execute successfully, got: exit code: 1



--- stderr
gcc.exe: error: CreateProcess: No such file or directory
thread '<main>' panicked at 'explicit panic', C:\Users\LuminousLizard\.cargo\reg
istry\src\github.com-88ac128001ac3a9a\gcc-0.3.19\src\lib.rs:771

D:\Daten\Rust\ftb-rs-master>

--LuminousLizard de-native / "en-B2" (talk) 14:38, 28 December 2015 (UTC)

The tilesheet program transitively depends on some C/C++ code, which unfortunately means you will need a C/C++ compiler. Since you're doing this on Windows, you have two choices. You can either install a full mingw-w64 installation for x86_64 and make sure it is in your PATH, or you can get the x86_64-pc-windows-msvc version of Rust instead and install VS 2015 Community Edition. 🐇Retep998🐇🐰Bunny Overlord🐰 03:29, 29 December 2015 (UTC)
Thanks for the help ! MinGw-w64 from this page and "path set" has solved the problem :) ! I'll try it further .... I'll call you when the next problem arises xD. --LuminousLizard de-native / "en-B2" (talk) 10:29, 29 December 2015 (UTC)
With "set path" I mean to write them into the system variables. But I have the next problem. After compiling I use the command to update a tilesheet, but the "Tilesheet ABBRV.txt" is not created.
D:\>cd Daten\Rust\ftb-rs-master

D:\Daten\Rust\ftb-rs-master>cargo build
   Compiling winapi-build v0.1.1
   Compiling winapi v0.2.4
   Compiling libc v0.1.10
   Compiling rustc-serialize v0.3.16
   Compiling advapi32-sys v0.1.2
   Compiling regex-syntax v0.2.2
   Compiling glob v0.2.10
   Compiling bitflags v0.3.2
   Compiling byteorder v0.3.13
   Compiling memchr v0.1.6
   Compiling aho-corasick v0.3.4
   Compiling regex v0.1.41
   Compiling gcc v0.3.19
   Compiling rand v0.3.11
   Compiling miniz-sys v0.1.6
   Compiling num v0.1.27
   Compiling flate2 v0.2.9
   Compiling enum_primitive v0.0.1
   Compiling png v0.3.1
   Compiling image v0.4.0
C:\Users\LuminousLizard\.cargo\registry\src\github.com-88ac128001ac3a9a\image-0.
4.0\./src\image.rs:67:13: 67:42 warning: `ImageError::NotEnoughData` does not na
me a tuple variant or a tuple struct [E0164]
C:\Users\LuminousLizard\.cargo\registry\src\github.com-88ac128001ac3a9a\image-0.
4.0\./src\image.rs:67             ImageError::NotEnoughData(..) => &"Not enough
data",

                                  ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
C:\Users\LuminousLizard\.cargo\registry\src\github.com-88ac128001ac3a9a\image-0.
4.0\./src\image.rs:67:13: 67:42 help: run `rustc --explain E0164` to see a detai
led explanation
C:\Users\LuminousLizard\.cargo\registry\src\github.com-88ac128001ac3a9a\image-0.
4.0\./src\image.rs:67:13: 67:42 note: this warning will become a HARD ERROR in a
 future release. See RFC 218 for details.
C:\Users\LuminousLizard\.cargo\registry\src\github.com-88ac128001ac3a9a\image-0.
4.0\./src\image.rs:67             ImageError::NotEnoughData(..) => &"Not enough
data",

                                  ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   Compiling ftb v0.0.1 (file:///D:/Daten/Rust/ftb-rs-master)
src\main.rs:3:37: 3:42 warning: this feature is stable. attribute no longer need
ed, #[warn(stable_features)] on by default
src\main.rs:3 #![feature(fs_walk, slice_patterns, drain)]
                                                  ^~~~~
src\main.rs:14:27: 14:35 warning: use of deprecated item: superceded by the walk
dir crate, #[warn(deprecated)] on by default
src\main.rs:14 use std::fs::{File, copy, walk_dir};
                                         ^~~~~~~~
src\tilesheets.rs:8:21: 8:29 warning: use of deprecated item: superceded by the
walkdir crate, #[warn(deprecated)] on by default
src\tilesheets.rs:8 use std::fs::{File, walk_dir};
                                        ^~~~~~~~
src\tilesheets.rs:78:22: 78:30 warning: use of deprecated item: superceded by th
e walkdir crate, #[warn(deprecated)] on by default
src\tilesheets.rs:78         for entry in walk_dir(&path).unwrap() {
                                          ^~~~~~~~
src\tilesheets.rs:98:33: 98:41 warning: use of deprecated item: superceded by th
e walkdir crate, #[warn(deprecated)] on by default
src\tilesheets.rs:98         let names: HashSet<_> = walk_dir(&path).unwrap().fi
lter_map(|entry| {
                                                     ^~~~~~~~
src\main.rs:124:18: 124:26 warning: use of deprecated item: superceded by the wa
lkdir crate, #[warn(deprecated)] on by default
src\main.rs:124     for entry in walk_dir(&path).unwrap() {
                                 ^~~~~~~~

D:\Daten\Rust\ftb-rs-master>cargo run --release -- import PR
   Compiling winapi v0.2.4
   Compiling libc v0.1.10
   Compiling regex-syntax v0.2.2
   Compiling rustc-serialize v0.3.16
   Compiling glob v0.2.10
   Compiling memchr v0.1.6
   Compiling aho-corasick v0.3.4
   Compiling bitflags v0.3.2
   Compiling byteorder v0.3.13
   Compiling winapi-build v0.1.1
   Compiling regex v0.1.41
   Compiling advapi32-sys v0.1.2
   Compiling gcc v0.3.19
   Compiling rand v0.3.11
   Compiling num v0.1.27
   Compiling miniz-sys v0.1.6
   Compiling enum_primitive v0.0.1
   Compiling flate2 v0.2.9
   Compiling png v0.3.1
   Compiling image v0.4.0
C:\Users\LuminousLizard\.cargo\registry\src\github.com-88ac128001ac3a9a\image-0.
4.0\./src\image.rs:67:13: 67:42 warning: `ImageError::NotEnoughData` does not na
me a tuple variant or a tuple struct [E0164]
C:\Users\LuminousLizard\.cargo\registry\src\github.com-88ac128001ac3a9a\image-0.
4.0\./src\image.rs:67             ImageError::NotEnoughData(..) => &"Not enough
data",

                                  ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
C:\Users\LuminousLizard\.cargo\registry\src\github.com-88ac128001ac3a9a\image-0.
4.0\./src\image.rs:67:13: 67:42 help: run `rustc --explain E0164` to see a detai
led explanation
C:\Users\LuminousLizard\.cargo\registry\src\github.com-88ac128001ac3a9a\image-0.
4.0\./src\image.rs:67:13: 67:42 note: this warning will become a HARD ERROR in a
 future release. See RFC 218 for details.
C:\Users\LuminousLizard\.cargo\registry\src\github.com-88ac128001ac3a9a\image-0.
4.0\./src\image.rs:67             ImageError::NotEnoughData(..) => &"Not enough
data",

                                  ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   Compiling ftb v0.0.1 (file:///D:/Daten/Rust/ftb-rs-master)
src\main.rs:3:37: 3:42 warning: this feature is stable. attribute no longer need
ed, #[warn(stable_features)] on by default
src\main.rs:3 #![feature(fs_walk, slice_patterns, drain)]
                                                  ^~~~~
src\main.rs:14:27: 14:35 warning: use of deprecated item: superceded by the walk
dir crate, #[warn(deprecated)] on by default
src\main.rs:14 use std::fs::{File, copy, walk_dir};
                                         ^~~~~~~~
src\tilesheets.rs:8:21: 8:29 warning: use of deprecated item: superceded by the
walkdir crate, #[warn(deprecated)] on by default
src\tilesheets.rs:8 use std::fs::{File, walk_dir};
                                        ^~~~~~~~
src\tilesheets.rs:78:22: 78:30 warning: use of deprecated item: superceded by th
e walkdir crate, #[warn(deprecated)] on by default
src\tilesheets.rs:78         for entry in walk_dir(&path).unwrap() {
                                          ^~~~~~~~
src\tilesheets.rs:98:33: 98:41 warning: use of deprecated item: superceded by th
e walkdir crate, #[warn(deprecated)] on by default
src\tilesheets.rs:98         let names: HashSet<_> = walk_dir(&path).unwrap().fi
lter_map(|entry| {
                                                     ^~~~~~~~
src\main.rs:124:18: 124:26 warning: use of deprecated item: superceded by the wa
lkdir crate, #[warn(deprecated)] on by default
src\main.rs:124     for entry in walk_dir(&path).unwrap() {
                                 ^~~~~~~~
     Running `target\release\ftb.exe import PR`

D:\Daten\Rust\ftb-rs-master>cargo run --release -- import PR
     Running `target\release\ftb.exe import PR`

D:\Daten\Rust\ftb-rs-master>

In the "\ftb-rs-master\work\tilesheets" folder I have:

  1. the "PR" folder with all icons from NEI
  2. the downloaded 16px tilesheet of PR
  3. the downloaded 32px tilesheet of PR
  4. the imports.txt out of Special:TileList

But how has the record in the text file look like ? As some spaces are included along with tabs. I have deleted the spaces but does not work too. I have saved with UTF-8 without BOM. My txt file looks like:

	#	Item name	Mod name	X position	Y position	Registered sizes
Edit	5796	Draw Plate	PR	0	0	16px, 32px
Edit	5797	Wire Debugger	PR	1	0	16px, 32px
Edit	5798	Data Card	PR	2	0	16px, 32px
Edit	5799	Wool Gin	PR	3	0	16px, 32px
Edit	5800	Screwdriver	PR	4	0	16px, 32px

--LuminousLizard de-native / "en-B2" (talk) 12:18, 29 December 2015 (UTC)

When using the import feature, do not add the header row, so just delete that first line and everything should work. The code is capable of handling all whitespace equally well so mixed spaces and tabs shouldn't be a problem. I'd really recommend to avoid deleting and recreating the tilesheet if possible. Just because Xbony2 recreates tilesheets, doesn't mean you should do that too. 🐇Retep998🐇🐰Bunny Overlord🐰 15:33, 29 December 2015 (UTC)
I use "rust-nightly-x86_64-pc-windows-gnu" (Nightly (1.7)). I will try it with the msvc version. --LuminousLizard de-native / "en-B2" (talk) 12:51, 29 December 2015 (UTC)
Creating a new tilesheet (for Project Red) works without any problem. The txt-files and tilesheets are getting produced. But the updating of the tilesheet doesn't works. I thinks it is a problem with the "imports.txt". --LuminousLizard de-native / "en-B2" (talk) 13:21, 29 December 2015 (UTC)
Adding on to an existing tilesheet has always been shit for me, I usually just delete + replace a tilesheet. Btw, you should register a bot account for importing the tilesheet onto the actual wiki, since it disrupts the RC largely. -Xbony2 (talk) 13:41, 29 December 2015 (UTC)
I can also replace the complete tilesheet, if that's allowed. But since all the entries of the items need to be changed, as I've seen on the created tilesheet. That with the bot would been my last question ^^. As I said, I'm not a programmer and don't know how the bots work. --LuminousLizard de-native / "en-B2" (talk) 13:52, 29 December 2015 (UTC)
It doesn't really need to be a bot, just a secondary account marked as a bot. To delete a tilesheet, you just need to go to Special:CreateTileSheet, put in the first two parameters, leave the third empty, and click the "Overwrite existing" button. -Xbony2 (talk) 14:00, 29 December 2015 (UTC)

Cmd with admin rights and no txt-file is created.

Microsoft Windows [Version 6.1.7601]
Copyright (c) 2009 Microsoft Corporation. Alle Rechte vorbehalten.

C:\Windows\system32>cd..

C:\Windows>cd..

C:\>D:

D:\>cd Daten\Rust\ftb-rs-master

D:\Daten\Rust\ftb-rs-master>cargo run --release --verbose -- import PR
       Fresh winapi v0.2.4
       Fresh bitflags v0.3.2
       Fresh winapi-build v0.1.1
       Fresh byteorder v0.3.13
       Fresh rustc-serialize v0.3.16
       Fresh regex-syntax v0.2.2
       Fresh glob v0.2.10
       Fresh libc v0.1.10
       Fresh memchr v0.1.6
       Fresh advapi32-sys v0.1.2
       Fresh aho-corasick v0.3.4
       Fresh rand v0.3.11
       Fresh gcc v0.3.19
       Fresh regex v0.1.41
       Fresh num v0.1.27
       Fresh enum_primitive v0.0.1
       Fresh miniz-sys v0.1.6
       Fresh flate2 v0.2.9
       Fresh png v0.3.1
       Fresh image v0.4.0
       Fresh ftb v0.0.1 (file:///D:/Daten/Rust/ftb-rs-master)
     Running `target\release\ftb.exe import PR`

D:\Daten\Rust\ftb-rs-master>

--LuminousLizard de-native / "en-B2" (talk) 16:33, 29 December 2015 (UTC)

Problem solved ! "Import.txt" and not "Imports.txt" -.-' ! --LuminousLizard de-native / "en-B2" (talk) 12:14, 30 December 2015 (UTC)


Getting this error when trying to run the tilesheet program:

C:\Users\Coloradohusky\Downloads\ftb-rs-master>cargo run --release
    Finished release [optimized + debuginfo] target(s) in 0.19s
     Running `target\release\ftb.exe`
Welcome to the FTB tilesheet program!
Enter mod abbreviation:
AN
Starting up tilesheet manager.
Logged in to MediaWiki
WARNING: Failed to load renames.txt Os { code: 2, kind: NotFound, message: "The system cannot find the file specified." }
Checking for existing tilesheet.
Existing tilesheet sizes: [16, 32]
Importing existing tilesheet images.
WARNING: No tilesheet image found for size 16!
WARNING: No tilesheet image found for size 32!
Importing tiles.
Checking tiles.
Please confirm that the tiles being added in additions.txt are correct.
Also please check over the tiles in missing.txt and ensure that not updating them was intentional.
If there are tiles in missing.txt that you no longer wish to keep, please copy them to todelete.txt.
If you need to make any changes to the tiles or renames.txt please restart this program.
When you are done, please enter "continue".
continue
Updating tilesheet with new tiles.
Optimizing tilesheets
thread 'main' panicked at 'called `Result::unwrap()` on an `Err` value: Os { code: 2, kind: NotFound, message: "The system cannot find the file specified." }', src\libcore\result.rs:1051:5
note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace.
error: process didn't exit successfully: `target\release\ftb.exe` (exit code: 101)

The thing is, a Tilesheet AN 16.png file is created in the tilesheets folder, but not a Tilesheet AN 32.png file. Anyone know what's going on? --Coloradohusky (talk) 00:15, 16 July 2019 (UTC) EDIT: I'm just an idiot, forgot to put in the OptiPNG executable, everything works fine now!

Linux[edit source]

Other problem with linux :/ ! Both when compiling everything again, and if I use Windows created ... the same error !
[luminouslizard@LuminousLizard FTB Tilesheet programm]$ sudo cargo build
[sudo] Passwort für luminouslizard: 
   Compiling regex-syntax v0.2.2
   Compiling bitflags v0.3.2
   Compiling byteorder v0.3.13
   Compiling gcc v0.3.19
   Compiling glob v0.2.10
   Compiling winapi-build v0.1.1
   Compiling libc v0.1.10
   Compiling memchr v0.1.6
   Compiling rustc-serialize v0.3.16
   Compiling miniz-sys v0.1.6
   Compiling aho-corasick v0.3.4
   Compiling flate2 v0.2.9
   Compiling winapi v0.2.4
   Compiling advapi32-sys v0.1.2
   Compiling rand v0.3.11
   Compiling regex v0.1.41
   Compiling num v0.1.27
   Compiling enum_primitive v0.0.1
   Compiling png v0.3.1
   Compiling image v0.4.0
   Compiling ftb v0.0.1 (file:///home/luminouslizard/Desktop/FTB%20Tilesheet%20programm)
src/main.rs:3:1: 3:44 error: #[feature] may not be used on the stable release channel
src/main.rs:3 #![feature(fs_walk, slice_patterns, drain)]
              ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
error: aborting due to previous error
Could not compile `ftb`.

To learn more, run the command again with --verbose.
[luminouslizard@LuminousLizard FTB Tilesheet programm]$ 

--LuminousLizard de-native / "en-B2" (talk) 00:01, 30 December 2015 (UTC)

Look at the error message "#[feature] may not be used on the stable release channel". You need to have the nightly installed, there's a flag you have to pass to rustup in order to install a nightly instead of a stable. 🐇Retep998🐇🐰Bunny Overlord🐰 08:03, 30 December 2015 (UTC)
Sorry ... I have used the wrong link. I have it now uninstalled and the nightly installed. Compiling without errors, Creating a tilesheet without errors and all files are created ... but updating a tilesheet stops at the same part after 1 sec (like in Windows) and no file is created :/ ! Without "sudo" I have permission denied. At least I can create missing tilesheets and insert them into the wiki. So I can take some work off.
[luminouslizard@LuminousLizard ftb-rs]$ sudo cargo run --release --verbose -- import PR
[sudo] Passwort für luminouslizard: 
       Fresh byteorder v0.3.13
       Fresh regex-syntax v0.2.2
       Fresh libc v0.1.10
       Fresh gcc v0.3.19
       Fresh bitflags v0.3.2
       Fresh glob v0.2.10
       Fresh memchr v0.1.6
       Fresh rustc-serialize v0.3.16
       Fresh winapi-build v0.1.1
       Fresh aho-corasick v0.3.4
       Fresh winapi v0.2.4
       Fresh regex v0.1.41
       Fresh miniz-sys v0.1.6
       Fresh flate2 v0.2.9
       Fresh advapi32-sys v0.1.2
       Fresh rand v0.3.11
       Fresh num v0.1.27
       Fresh png v0.3.1
       Fresh enum_primitive v0.0.1
       Fresh image v0.4.0
       Fresh ftb v0.0.1 (file:///home/luminouslizard/Desktop/FTB/ftb-rs)
     Running `target/release/ftb import PR`
[luminouslizard@LuminousLizard ftb-rs]$

--LuminousLizard de-native / "en-B2" (talk) 10:33, 30 December 2015 (UTC)

Problem solved ! "Import.txt" and not "Imports.txt" -.-' ! --LuminousLizard de-native / "en-B2" (talk) 12:14, 30 December 2015 (UTC)
Hmm, does it really need sudo access though? I've never needed it on OS X, which is unix-based. -Xbony2 (talk) 12:58, 30 December 2015 (UTC)

New problem on Linux[edit source]

[luminouslizard@LuminousLizard ftb-rs-master]$ cargo run --release -- import PR
    Finished release [optimized + debuginfo] target(s) in 0.0 secs
     Running `target/release/ftb import PR`
Importing old tilesheet
thread 'main' panicked at 'called `Option::unwrap()` on a `None` value', ../src/libcore/option.rs:323
note: Run with `RUST_BACKTRACE=1` for a backtrace.
error: process didn't exit successfully: `target/release/ftb import PR` (exit code: 101)
[luminouslizard@LuminousLizard ftb-rs-master]$ 

New problem and new error message. It is a test on an old update which worked in the past. I have tested it with Rust Beta and Nightly and both the same. Also I downloaded the tilesheet program again. Retep998 please help. --LuminousLizard FTB Wiki Staff de-N / "en-2" (talk) 21:55, 15 October 2016 (UTC)

Done. "Translate" column now required ... (thanks Xbony2). I used Rust Nightly but I also had a few other problems. --LuminousLizard FTB Wiki Staff de-N / "en-2" (talk) 08:36, 16 October 2016 (UTC)