rustyroguelike
rustyroguelike copied to clipboard
Menu location (and other console geometry?) broken on HiDPI (MacBook)
I'm trying to run it on a Macbook, and the menu is only visible if I make the window really tiny.
If press N, the game crashes with:
thread 'main' panicked at 'index out of bounds: the len is 4000 but the index is 4016', /Users/vic/.cargo/git/checkouts/rltk_rs-9a03b5b24ea60f66/1c9e1d7/src/simple_console.rs:331:9
stack backtrace:
0: backtrace::backtrace::libunwind::trace
at /Users/runner/.cargo/registry/src/github.com-1ecc6299db9ec823/backtrace-0.3.46/src/backtrace/libunwind.rs:86
1: backtrace::backtrace::trace_unsynchronized
at /Users/runner/.cargo/registry/src/github.com-1ecc6299db9ec823/backtrace-0.3.46/src/backtrace/mod.rs:66
2: std::sys_common::backtrace::_print_fmt
at src/libstd/sys_common/backtrace.rs:78
3: <std::sys_common::backtrace::_print::DisplayBacktrace as core::fmt::Display>::fmt
at src/libstd/sys_common/backtrace.rs:59
4: core::fmt::write
at src/libcore/fmt/mod.rs:1076
5: std::io::Write::write_fmt
at src/libstd/io/mod.rs:1537
6: std::sys_common::backtrace::_print
at src/libstd/sys_common/backtrace.rs:62
7: std::sys_common::backtrace::print
at src/libstd/sys_common/backtrace.rs:49
8: std::panicking::default_hook::{{closure}}
at src/libstd/panicking.rs:198
9: std::panicking::default_hook
at src/libstd/panicking.rs:217
10: std::panicking::rust_panic_with_hook
at src/libstd/panicking.rs:526
11: rust_begin_unwind
at src/libstd/panicking.rs:437
12: core::panicking::panic_fmt
13: core::panicking::panic_bounds_check
14: <usize as core::slice::SliceIndex<[T]>>::index_mut
at /Users/vic/.rustup/toolchains/beta-x86_64-apple-darwin/lib/rustlib/src/rust/src/libcore/slice/mod.rs:3109
15: core::slice::<impl core::ops::index::IndexMut<I> for [T]>::index_mut
at /Users/vic/.rustup/toolchains/beta-x86_64-apple-darwin/lib/rustlib/src/rust/src/libcore/slice/mod.rs:2966
16: <alloc::vec::Vec<T> as core::ops::index::IndexMut<I>>::index_mut
at /Users/vic/.rustup/toolchains/beta-x86_64-apple-darwin/lib/rustlib/src/rust/src/liballoc/vec.rs:1987
17: <rltk::simple_console::SimpleConsole as rltk::console::Console>::set_bg
at /Users/vic/.cargo/git/checkouts/rltk_rs-9a03b5b24ea60f66/1c9e1d7/src/simple_console.rs:331
18: <rltk::rltk::Rltk as rltk::console::Console>::set_bg
at /Users/vic/.cargo/git/checkouts/rltk_rs-9a03b5b24ea60f66/1c9e1d7/src/rltk.rs:287
19: rusty_roguelike::game::gui::draw_user_interface
at src/game/gui.rs:92
20: rusty_roguelike::game::gui::render
at src/game/gui.rs:15
21: <rusty_roguelike::game::gamestate::State as rltk::GameState>::tick
at src/game/gamestate.rs:25
22: rltk::rltk::tock
at /Users/vic/.cargo/git/checkouts/rltk_rs-9a03b5b24ea60f66/1c9e1d7/src/rltk.rs:446
23: rltk::rltk::main_loop::{{closure}}
at /Users/vic/.cargo/git/checkouts/rltk_rs-9a03b5b24ea60f66/1c9e1d7/src/rltk.rs:373
24: <winit::platform_impl::platform::app_state::EventLoopHandler<F,T> as winit::platform_impl::platform::app_state::EventHandler>::handle_nonuser_event
at /Users/vic/.cargo/registry/src/github.com-1ecc6299db9ec823/winit-0.20.0-alpha2/src/platform_impl/macos/app_state.rs:61
25: winit::platform_impl::platform::app_state::Handler::handle_nonuser_event
at /Users/vic/.cargo/registry/src/github.com-1ecc6299db9ec823/winit-0.20.0-alpha2/src/platform_impl/macos/app_state.rs:169
26: winit::platform_impl::platform::app_state::AppState::cleared
at /Users/vic/.cargo/registry/src/github.com-1ecc6299db9ec823/winit-0.20.0-alpha2/src/platform_impl/macos/app_state.rs:292
27: winit::platform_impl::platform::observer::control_flow_end_handler
at /Users/vic/.cargo/registry/src/github.com-1ecc6299db9ec823/winit-0.20.0-alpha2/src/platform_impl/macos/observer.rs:141
28: AssociationsManager::_map
29: AssociationsManager::_map
30: AssociationsManager::_map
31: AssociationsManager::_map
32: AssociationsManager::_map
33: AssociationsManager::_map
34: AssociationsManager::_map
35: AssociationsManager::_map
36: AssociationsManager::_map
37: AssociationsManager::_map
38: <() as objc::message::MessageArguments>::invoke
at /Users/vic/.cargo/registry/src/github.com-1ecc6299db9ec823/objc-0.2.6/src/message/mod.rs:128
39: objc::message::platform::send_unverified
at /Users/vic/.cargo/registry/src/github.com-1ecc6299db9ec823/objc-0.2.6/src/message/apple/mod.rs:27
40: objc::message::send_message
at /Users/vic/.cargo/registry/src/github.com-1ecc6299db9ec823/objc-0.2.6/src/message/mod.rs:178
41: winit::platform_impl::platform::event_loop::EventLoop<T>::run
at /Users/vic/.cargo/registry/src/github.com-1ecc6299db9ec823/objc-0.2.6/src/macros.rs:128
42: winit::event_loop::EventLoop<T>::run
at /Users/vic/.cargo/registry/src/github.com-1ecc6299db9ec823/winit-0.20.0-alpha2/src/event_loop.rs:139
43: rltk::rltk::main_loop
at /Users/vic/.cargo/git/checkouts/rltk_rs-9a03b5b24ea60f66/1c9e1d7/src/rltk.rs:360
44: rusty_roguelike::main
at src/main.rs:9
45: std::rt::lang_start::{{closure}}
at /Users/vic/.rustup/toolchains/beta-x86_64-apple-darwin/lib/rustlib/src/rust/src/libstd/rt.rs:67
46: std::rt::lang_start_internal::{{closure}}
at src/libstd/rt.rs:52
47: std::panicking::try::do_call
at src/libstd/panicking.rs:348
48: std::panicking::try
at src/libstd/panicking.rs:325
49: std::panic::catch_unwind
at src/libstd/panic.rs:394
50: std::rt::lang_start_internal
at src/libstd/rt.rs:51
51: std::rt::lang_start
at /Users/vic/.rustup/toolchains/beta-x86_64-apple-darwin/lib/rustlib/src/rust/src/libstd/rt.rs:67
52: main
note: Some details are omitted, run with `RUST_BACKTRACE=full` for a verbose backtrace.
Process finished with exit code 101