Giter Club home page Giter Club logo

tdeheroes's Introduction

Optolith Character Generator

This is the bug and feature tracker for Optolith, a desktop application for The Dark Eye 5th Edition.

The source code of the app has been made open source, so I merged both repositories. You can find the combined one at https://github.com/elyukai/optolith-client! Please submit issues over there!

This repository has been archived due to this change.

Installing

You can download the app here (German page) or here here (English page) (same app on both pages). You'll get an installer for Windows and a DMG for Mac, both with Auto Update support. For Linux, you have to use the .tar.gz, but I am working on an Auto Updater for Linux via AppImage.

It is available for Windows 7+ as well as for Linux (Ubuntu 12.04+, Fedora 21, Debian 8) and macOS 10.9+ x64.

Contributing

This repository only contains the issues and the rough roadmap for this app, but you can submit a bug, comment on issues and join the discussions on the following pages:

Fixed issues can be found in the CHANGELOG.md or via the issue tracker.

Roadmap

For details please check out the issues and provided links above!

tdeheroes's People

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Forkers

mfxbe tsafried

tdeheroes's Issues

Bug Kampftalentwertberechnung

Bei Kampftalenten der Leiteigenschaften GE und KK, sowie GE/KK berechnet er den Bonus auf AT und PA mit MU statt der jeweiligen Leiteigenschaft.

UI Redesign

I want to redesign the UI not only because it wont be possible to get a nice mobile matching design but also because it copies too much - it was meant as a temporary UI design.

first presentation 200

This is my first concept of the new UI. It will have two themes, dark and light. Yes, it is reminiscent of the old design, but I want to keep the basic structure of the view with a titlebar/navbar, a sidebar and the main content. I will create new icons instead of using Google's Material Icons and also improve UX by adding new element types such as segmented controls.

Pets/Familiars

A new tab in the Belongings section will be added. The page will provide the ability to create pets similar to how it is already working on the official character sheets. At first it will only be possible to create one pet (due to the limitations of the sheets), but it might be possible to add multiple pets in the future.

Wiki and hero editing side by side

All texts from the German Regel-Wiki (and respective translations) made available offline next to entries in hero view lists.

  • Spell Extensions (texts)
  • Spell Extensions (implementation)
  • Liturgical Chant Extensions (texts)
  • Liturgical Chant Extensions (implementation)
  • Professions (texts)
  • Professions (implementation)
  • Profession Variants (texts)
  • Profession Variants (implementation)
  • Advantages (texts)
  • Advantages (implementation)
  • Disadvantages (texts)
  • Disadvantages (implementation)
  • Special Abilities (texts)
  • Special Abilities (implementation)
  • Combat Techniques (texts)
  • Combat Techniques (implementation)
  • Items (texts)
  • Items (implementation)

Items can be added multiple times to inventory when manually searching.

Tl:dr When searched via text-search you can add items multiple times.

Beim Hinzufügen von Gegenständen über die normale Suche (also ohne Textsuche) kann ein Item nur einmal hinzugefügt werden und wird dann aus der Liste der hinzufügbaren Gegenstände gelöscht.

Wenn jedoch der selbe Gegenstand über die Textsuche gesucht wird, kann er noch einmal hinzugefügt werden, obwohl er bereits im Inventar ist.

In Anbetracht, dass eben ohne Textsuche der Gegenstand aus der Liste entfernt ist, glaube ich nicht, dass es gewollt ist, dass er bei der Textsuche in der Liste bleibt.

Beispiel:
Balestrina ist nicht in normaler Auswahl, da schon im Besitz:
1
Die Balestrina ist allerdings über die Textsuche noch immer auffind- & hinzufügbar.
2

Armor zones editor

Adds the ability to create armor sets for all the different zones. You will be able to select one given or one custom armor as well as the wear level (Armory) per zone.

Bug Rückgängigtaste bei Firnelfen

bug

Diese Meldung erscheint, wenn ich Firnelfen als Klasse und Spezies ausgewählt habe und bei der Professionsauswahl rückgängig machen drücke.

"Schrift kaufen (Kusliker Zeichen)" ticks "Chuchas" writing system

Version 0.48.1

My steps to the error: Create new Character -> Spezies: Mittelländer -> Kultur: Mittelreicher -> Profession: Krötenhexe.

Error Description:
The "Schrift kaufen (Kusliker Zeichen)", when ticked, does tick the "Chuchas"-Writing System instead of the "Kusliker Zeichen"-Writing System.
Before:
before
After:
after

(Edit: After reading through the "Werte werden falsch berechnet"-Issue again, I'm not sure wether or not point 1-3 are intentional or not, I'll leave them here because of that... Point 4 and definitely Point 5 should be unintentional though... )
This leads to the following things:

  1. The AP for the languages and writing system doesn't get subtracted from the Profession (I still have 6 AP left). At least from my knowledge the writing system from the culture should count to the maximum from the profession.

  2. If I add a writing system or language from the list before ticking the one from the culture-packet, it gets greyed out even though I have enough AP left:
    grey

  3. When this gets ignored and I proceed making the charakter, it still applies the "Kusliker Zeichen"
    though. Here you can also see once more that I was now able to pick writing systems for 8AP instead of 6AP because of the first issue:
    sonder

  4. The "Kusliker Zeichen" writing system can be ticked from the list a second time (although it will still only add 1 "Kusliker Zeichen" writing system later on and also doesn't produce an error in the console).

  5. If I use a Profession that doesn't have 6AP for languages and writing systems (e.g. "Eulenhexe"), when I tick the "Schrift kaufen (Kusliker Zeichen)" and thus the 6AP-Chuchas gets ticked, the "Fertigstellen"-Button gives an Exception:
    bundle.js:33196 Uncaught TypeError: Cannot read property 'value' of undefined at Object.add [as d] (file:///E:/OneDrive/Das%20Schwarze%20Auge/DSA-Tool/tdeheroes-win32-x64/resources/app.asar/resources/bundle.js:33196:48) at ListStoreStatic.addSR (file:///E:/OneDrive/Das%20Schwarze%20Auge/DSA-Tool/tdeheroes-win32-x64/resources/app.asar/resources/bundle.js:502:96) at skillRatingList.forEach (file:///E:/OneDrive/Das%20Schwarze%20Auge/DSA-Tool/tdeheroes-win32-x64/resources/app.asar/resources/bundle.js:772:54) at Map.forEach (native) at ListStoreStatic.assignRCP (file:///E:/OneDrive/Das%20Schwarze%20Auge/DSA-Tool/tdeheroes-win32-x64/resources/app.asar/resources/bundle.js:772:25) at Object.ListStoreStatic.dispatchToken.__WEBPACK_IMPORTED_MODULE_3__dispatcher_AppDispatcher__.a.register [as ID_16] (file:///E:/OneDrive/Das%20Schwarze%20Auge/DSA-Tool/tdeheroes-win32-x64/resources/app.asar/resources/bundle.js:271:30) at Dispatcher._invokeCallback (file:///E:/OneDrive/Das%20Schwarze%20Auge/DSA-Tool/tdeheroes-win32-x64/resources/app.asar/resources/bundle.js:44184:24) at Dispatcher.waitFor (file:///E:/OneDrive/Das%20Schwarze%20Auge/DSA-Tool/tdeheroes-win32-x64/resources/app.asar/resources/bundle.js:44144:12) at Object.APStoreStatic.dispatchToken.__WEBPACK_IMPORTED_MODULE_1__dispatcher_AppDispatcher__.a.register [as ID_8] (file:///E:/OneDrive/Das%20Schwarze%20Auge/DSA-Tool/tdeheroes-win32-x64/resources/app.asar/resources/bundle.js:2645:106) at Dispatcher._invokeCallback (file:///E:/OneDrive/Das%20Schwarze%20Auge/DSA-Tool/tdeheroes-win32-x64/resources/app.asar/resources/bundle.js:44184:24) add @ bundle.js:33196 addSR @ bundle.js:502 skillRatingList.forEach @ bundle.js:772 assignRCP @ bundle.js:772 ListStoreStatic.dispatchToken.__WEBPACK_IMPORTED_MODULE_3__dispatcher_AppDispatcher__.a.register @ bundle.js:271 _invokeCallback @ bundle.js:44184 waitFor @ bundle.js:44144 APStoreStatic.dispatchToken.__WEBPACK_IMPORTED_MODULE_1__dispatcher_AppDispatcher__.a.register @ bundle.js:2645 _invokeCallback @ bundle.js:44184 dispatch @ bundle.js:44160 setSelections @ bundle.js:25410 Selections.assignRCPEntries @ bundle.js:39500 ReactErrorUtils.invokeGuardedCallback @ react-dom.js:9073 executeDispatch @ react-dom.js:3031 executeDispatchesInOrder @ react-dom.js:3054 executeDispatchesAndRelease @ react-dom.js:2456 executeDispatchesAndReleaseTopLevel @ react-dom.js:2467 forEachAccumulated @ react-dom.js:15515 processEventQueue @ react-dom.js:2670 runEventQueueInBatch @ react-dom.js:9097 handleTopLevel @ react-dom.js:9108 handleTopLevelImpl @ react-dom.js:9185 perform @ react-dom.js:14816 batchedUpdates @ react-dom.js:8862 batchedUpdates @ react-dom.js:12944 dispatchEvent @ react-dom.js:9260

Exporting to PDF not possible.

tl:dr.: "Exporting to PDF" creates a blank pdf.

Das Erstellen einer PDF aus dem Helden erzeugt bei mir eine PDF mit 1kb größe, welche nur aus einer einzelnen schwarzen Seite besteht. Die Konsole gibt mir diesen Fehler:

E:\OneDrive\Das Schwarze Auge\DSA-Tool\DSA-Tool\resources\app.asar\app\utils\createOverlay.js:7 Uncaught DOMException: Failed to execute 'removeChild' on 'Node': The node to be removed is not a child of this node.
    at Object.close (E:\OneDrive\Das Schwarze Auge\DSA-Tool\DSA-Tool\resources\app.asar\app\utils\createOverlay.js:7:19)
    at electron_1.remote.globalShortcut.register (E:\OneDrive\Das Schwarze Auge\DSA-Tool\DSA-Tool\resources\app.asar\app\utils\alert.js:22:29)
    at CallbacksRegistry.apply (E:\OneDrive\Das Schwarze Auge\DSA-Tool\DSA-Tool\resources\electron.asar\common\api\callbacks-registry.js:48:25)
    at EventEmitter.<anonymous> (E:\OneDrive\Das Schwarze Auge\DSA-Tool\DSA-Tool\resources\electron.asar\renderer\api\remote.js:299:21)
    at emitThree (events.js:116:13)
    at EventEmitter.emit (events.js:197:7)

Correct the "staf" typo

TDE5 Heroes Client v0.47.1
Gareth Academy of Sword and Staf is missing one more F on its end. It's supposed to be "staff".

Calculate culture/profession costs

Due to several issues concerning the calculated AP costs of professions I am considering to let the app calculate the cost instead of relying on the provided costs.

Replacing Flux with Redux

I am currently working on replacing traditional Flux with Redux. Obviously, this will take plenty of time, as I have to go through my entire code base. During this time I will not release any new updates to be done with the transition ASAP.
There are three main reasons for the switch:

  1. Undo/Redo will have a way smaller chance of being buggy.
  2. Debugging in general will be easier.
  3. Basically I have to rewrite 50% of my code. This enables me to lower the complexity of actions, resulting in more predictable/streamlined functions.

App freezes after clicking on the "Besitz" Tab

Version 0.48.2 (macOS)

My steps to the error: Create new Character -> finish creation -> add equipment (might be a specific one, but I'm not sure which one it could be) -> save -> clicking on the tab "Besitz" freezes the main window

Error Description:
Main window (everything beneath the tabs) freezes to the current selected one (all BUT "Besitz" or "Heldenbogen" work just fine) and can only be reverted by a restart.

The exception the console gives when clicking on the tab "Besitz" is as follows:
/private/var/folders/yq/27jj750d0s3d7v5fn6jsn0640000gn/T/AppTranslocation/E2169AA4-30D6-4EE2-923F-03D4945F6738/d/tdeheroes.app/Contents/Resources/app.asar/node_modules/react-dom/lib/ReactDOM.js:73 Download the React DevTools and use an HTTP server (instead of a file: URL) for a better development experience: https://fb.me/react-devtools
/private/var/folders/yq/27jj750d0s3d7v5fn6jsn0640000gn/T/AppTranslocation/E2169AA4-30D6-4EE2-923F-0…:46 Uncaught TypeError: Cannot read property 'localeCompare' of undefined
at exports.sortByGroupName (/private/var/folders/yq/27jj750d0s3d7v5fn6jsn0640000gn/T/AppTranslocation/E2169AA4-30D6-4EE2-923F-03D4945F6738/d/tdeheroes.app/Contents/Resources/app.asar/app/utils/FilterSortUtils.js:46:15)
at Array.sort (native)
at sort (/private/var/folders/yq/27jj750d0s3d7v5fn6jsn0640000gn/T/AppTranslocation/E2169AA4-30D6-4EE2-923F-03D4945F6738/d/tdeheroes.app/Contents/Resources/app.asar/app/utils/FilterSortUtils.js:100:17)
at Object.filterAndSort (/private/var/folders/yq/27jj750d0s3d7v5fn6jsn0640000gn/T/AppTranslocation/E2169AA4-30D6-4EE2-923F-03D4945F6738/d/tdeheroes.app/Contents/Resources/app.asar/app/utils/FilterSortUtils.js:126:12)
at Equipment.render (/private/var/folders/yq/27jj750d0s3d7v5fn6jsn0640000gn/T/AppTranslocation/E2169AA4-30D6-4EE2-923F-03D4945F6738/d/tdeheroes.app/Contents/Resources/app.asar/app/views/belongings/Equipment.js:61:40)
at /private/var/folders/yq/27jj750d0s3d7v5fn6jsn0640000gn/T/AppTranslocation/E2169AA4-30D6-4EE2-923F-03D4945F6738/d/tdeheroes.app/Contents/Resources/app.asar/node_modules/react-dom/lib/ReactCompositeComponent.js:795:21
at measureLifeCyclePerf (/private/var/folders/yq/27jj750d0s3d7v5fn6jsn0640000gn/T/AppTranslocation/E2169AA4-30D6-4EE2-923F-03D4945F6738/d/tdeheroes.app/Contents/Resources/app.asar/node_modules/react-dom/lib/ReactCompositeComponent.js:75:12)
at ReactCompositeComponentWrapper._renderValidatedComponentWithoutOwnerOrContext (/private/var/folders/yq/27jj750d0s3d7v5fn6jsn0640000gn/T/AppTranslocation/E2169AA4-30D6-4EE2-923F-03D4945F6738/d/tdeheroes.app/Contents/Resources/app.asar/node_modules/react-dom/lib/ReactCompositeComponent.js:794:25)
at ReactCompositeComponentWrapper._renderValidatedComponent (/private/var/folders/yq/27jj750d0s3d7v5fn6jsn0640000gn/T/AppTranslocation/E2169AA4-30D6-4EE2-923F-03D4945F6738/d/tdeheroes.app/Contents/Resources/app.asar/node_modules/react-dom/lib/ReactCompositeComponent.js:821:32)
at ReactCompositeComponentWrapper.performInitialMount (/private/var/folders/yq/27jj750d0s3d7v5fn6jsn0640000gn/T/AppTranslocation/E2169AA4-30D6-4EE2-923F-03D4945F6738/d/tdeheroes.app/Contents/Resources/app.asar/node_modules/react-dom/lib/ReactCompositeComponent.js:361:30)
exports.sortByGroupName @ /private/var/folders/yq/27jj750d0s3d7v5fn6jsn0640000gn/T/AppTranslocation/E2169AA4-30D6-4EE2-923F-0…:46
sort @ /private/var/folders/yq/27jj750d0s3d7v5fn6jsn0640000gn/T/AppTranslocation/E2169AA4-30D6-4EE2-923F-0…:100
filterAndSort @ /private/var/folders/yq/27jj750d0s3d7v5fn6jsn0640000gn/T/AppTranslocation/E2169AA4-30D6-4EE2-923F-0…:126
render @ /private/var/folders/yq/27jj750d0s3d7v5fn6jsn0640000gn/T/AppTranslocation/E2169AA4-30D6-4EE2-923F-0…:61
(anonymous) @ /private/var/folders/yq/27jj750d0s3d7v5fn6jsn0640000gn/T/AppTranslocation/E2169AA4-30D6-4EE2-923F-0…:795
measureLifeCyclePerf @ /private/var/folders/yq/27jj750d0s3d7v5fn6jsn0640000gn/T/AppTranslocation/E2169AA4-30D6-4EE2-923F-0…:75
_renderValidatedComponentWithoutOwnerOrContext @ /private/var/folders/yq/27jj750d0s3d7v5fn6jsn0640000gn/T/AppTranslocation/E2169AA4-30D6-4EE2-923F-0…:794
_renderValidatedComponent @ /private/var/folders/yq/27jj750d0s3d7v5fn6jsn0640000gn/T/AppTranslocation/E2169AA4-30D6-4EE2-923F-0…:821
performInitialMount @ /private/var/folders/yq/27jj750d0s3d7v5fn6jsn0640000gn/T/AppTranslocation/E2169AA4-30D6-4EE2-923F-0…:361
mountComponent @ /private/var/folders/yq/27jj750d0s3d7v5fn6jsn0640000gn/T/AppTranslocation/E2169AA4-30D6-4EE2-923F-0…:257
mountComponent @ /private/var/folders/yq/27jj750d0s3d7v5fn6jsn0640000gn/T/AppTranslocation/E2169AA4-30D6-4EE2-923F-0…:45
mountChildren @ /private/var/folders/yq/27jj750d0s3d7v5fn6jsn0640000gn/T/AppTranslocation/E2169AA4-30D6-4EE2-923F-0…:236
_createInitialChildren @ /private/var/folders/yq/27jj750d0s3d7v5fn6jsn0640000gn/T/AppTranslocation/E2169AA4-30D6-4EE2-923F-0…:703
mountComponent @ /private/var/folders/yq/27jj750d0s3d7v5fn6jsn0640000gn/T/AppTranslocation/E2169AA4-30D6-4EE2-923F-0…:522
mountComponent @ /private/var/folders/yq/27jj750d0s3d7v5fn6jsn0640000gn/T/AppTranslocation/E2169AA4-30D6-4EE2-923F-0…:45
performInitialMount @ /private/var/folders/yq/27jj750d0s3d7v5fn6jsn0640000gn/T/AppTranslocation/E2169AA4-30D6-4EE2-923F-0…:370
mountComponent @ /private/var/folders/yq/27jj750d0s3d7v5fn6jsn0640000gn/T/AppTranslocation/E2169AA4-30D6-4EE2-923F-0…:257
mountComponent @ /private/var/folders/yq/27jj750d0s3d7v5fn6jsn0640000gn/T/AppTranslocation/E2169AA4-30D6-4EE2-923F-0…:45
_updateRenderedComponent @ /private/var/folders/yq/27jj750d0s3d7v5fn6jsn0640000gn/T/AppTranslocation/E2169AA4-30D6-4EE2-923F-0…:764
_performComponentUpdate @ /private/var/folders/yq/27jj750d0s3d7v5fn6jsn0640000gn/T/AppTranslocation/E2169AA4-30D6-4EE2-923F-0…:723
updateComponent @ /private/var/folders/yq/27jj750d0s3d7v5fn6jsn0640000gn/T/AppTranslocation/E2169AA4-30D6-4EE2-923F-0…:644
receiveComponent @ /private/var/folders/yq/27jj750d0s3d7v5fn6jsn0640000gn/T/AppTranslocation/E2169AA4-30D6-4EE2-923F-0…:546
receiveComponent @ /private/var/folders/yq/27jj750d0s3d7v5fn6jsn0640000gn/T/AppTranslocation/E2169AA4-30D6-4EE2-923F-0…:124
updateChildren @ /private/var/folders/yq/27jj750d0s3d7v5fn6jsn0640000gn/T/AppTranslocation/E2169AA4-30D6-4EE2-923F-0…:109
_reconcilerUpdateChildren @ /private/var/folders/yq/27jj750d0s3d7v5fn6jsn0640000gn/T/AppTranslocation/E2169AA4-30D6-4EE2-923F-0…:206
_updateChildren @ /private/var/folders/yq/27jj750d0s3d7v5fn6jsn0640000gn/T/AppTranslocation/E2169AA4-30D6-4EE2-923F-0…:310
updateChildren @ /private/var/folders/yq/27jj750d0s3d7v5fn6jsn0640000gn/T/AppTranslocation/E2169AA4-30D6-4EE2-923F-0…:297
_updateDOMChildren @ /private/var/folders/yq/27jj750d0s3d7v5fn6jsn0640000gn/T/AppTranslocation/E2169AA4-30D6-4EE2-923F-0…:942
updateComponent @ /private/var/folders/yq/27jj750d0s3d7v5fn6jsn0640000gn/T/AppTranslocation/E2169AA4-30D6-4EE2-923F-0…:760
receiveComponent @ /private/var/folders/yq/27jj750d0s3d7v5fn6jsn0640000gn/T/AppTranslocation/E2169AA4-30D6-4EE2-923F-0…:722
receiveComponent @ /private/var/folders/yq/27jj750d0s3d7v5fn6jsn0640000gn/T/AppTranslocation/E2169AA4-30D6-4EE2-923F-0…:124
_updateRenderedComponent @ /private/var/folders/yq/27jj750d0s3d7v5fn6jsn0640000gn/T/AppTranslocation/E2169AA4-30D6-4EE2-923F-0…:753
_performComponentUpdate @ /private/var/folders/yq/27jj750d0s3d7v5fn6jsn0640000gn/T/AppTranslocation/E2169AA4-30D6-4EE2-923F-0…:723
updateComponent @ /private/var/folders/yq/27jj750d0s3d7v5fn6jsn0640000gn/T/AppTranslocation/E2169AA4-30D6-4EE2-923F-0…:644
performUpdateIfNecessary @ /private/var/folders/yq/27jj750d0s3d7v5fn6jsn0640000gn/T/AppTranslocation/E2169AA4-30D6-4EE2-923F-0…:560
performUpdateIfNecessary @ /private/var/folders/yq/27jj750d0s3d7v5fn6jsn0640000gn/T/AppTranslocation/E2169AA4-30D6-4EE2-923F-0…:156
runBatchedUpdates @ /private/var/folders/yq/27jj750d0s3d7v5fn6jsn0640000gn/T/AppTranslocation/E2169AA4-30D6-4EE2-923F-0…:150
perform @ /private/var/folders/yq/27jj750d0s3d7v5fn6jsn0640000gn/T/AppTranslocation/E2169AA4-30D6-4EE2-923F-0…:143
perform @ /private/var/folders/yq/27jj750d0s3d7v5fn6jsn0640000gn/T/AppTranslocation/E2169AA4-30D6-4EE2-923F-0…:143
perform @ /private/var/folders/yq/27jj750d0s3d7v5fn6jsn0640000gn/T/AppTranslocation/E2169AA4-30D6-4EE2-923F-0…:89
flushBatchedUpdates @ /private/var/folders/yq/27jj750d0s3d7v5fn6jsn0640000gn/T/AppTranslocation/E2169AA4-30D6-4EE2-923F-0…:172
closeAll @ /private/var/folders/yq/27jj750d0s3d7v5fn6jsn0640000gn/T/AppTranslocation/E2169AA4-30D6-4EE2-923F-0…:209
perform @ /private/var/folders/yq/27jj750d0s3d7v5fn6jsn0640000gn/T/AppTranslocation/E2169AA4-30D6-4EE2-923F-0…:156
batchedUpdates @ /private/var/folders/yq/27jj750d0s3d7v5fn6jsn0640000gn/T/AppTranslocation/E2169AA4-30D6-4EE2-923F-0…:62
batchedUpdates @ /private/var/folders/yq/27jj750d0s3d7v5fn6jsn0640000gn/T/AppTranslocation/E2169AA4-30D6-4EE2-923F-0…:97
dispatchEvent @ /private/var/folders/yq/27jj750d0s3d7v5fn6jsn0640000gn/T/AppTranslocation/E2169AA4-30D6-4EE2-923F-0…:147

The exception after clicking on the "Heldenbogen" button:
/private/var/folders/yq/27jj750d0s3d7v5fn6jsn0640000gn/T/AppTranslocation/05068644-B176-4A07-839B-C6BD1D9C1A7D/d/tdeheroes.app/Contents/Resources/app.asar/node_modules/react-dom/lib/ReactDOM.js:73 Download the React DevTools and use an HTTP server (instead of a file: URL) for a better development experience: https://fb.me/react-devtools
/private/var/folders/yq/27jj750d0s3d7v5fn6jsn0640000gn/T/AppTranslocation/05068644-B176-4A07-839B-C…:46 Uncaught TypeError: Cannot read property 'localeCompare' of undefined
at exports.sortByGroupName (/private/var/folders/yq/27jj750d0s3d7v5fn6jsn0640000gn/T/AppTranslocation/05068644-B176-4A07-839B-C6BD1D9C1A7D/d/tdeheroes.app/Contents/Resources/app.asar/app/utils/FilterSortUtils.js:46:15)
at Array.sort (native)
at Object.sort (/private/var/folders/yq/27jj750d0s3d7v5fn6jsn0640000gn/T/AppTranslocation/05068644-B176-4A07-839B-C6BD1D9C1A7D/d/tdeheroes.app/Contents/Resources/app.asar/app/utils/FilterSortUtils.js:100:17)
at BelongingsSheet (/private/var/folders/yq/27jj750d0s3d7v5fn6jsn0640000gn/T/AppTranslocation/05068644-B176-4A07-839B-C6BD1D9C1A7D/d/tdeheroes.app/Contents/Resources/app.asar/app/views/profile/BelongingsSheet.js:37:37)
at /private/var/folders/yq/27jj750d0s3d7v5fn6jsn0640000gn/T/AppTranslocation/05068644-B176-4A07-839B-C6BD1D9C1A7D/d/tdeheroes.app/Contents/Resources/app.asar/node_modules/react-dom/lib/ReactCompositeComponent.js:305:16
at measureLifeCyclePerf (/private/var/folders/yq/27jj750d0s3d7v5fn6jsn0640000gn/T/AppTranslocation/05068644-B176-4A07-839B-C6BD1D9C1A7D/d/tdeheroes.app/Contents/Resources/app.asar/node_modules/react-dom/lib/ReactCompositeComponent.js:75:12)
at ReactCompositeComponentWrapper._constructComponentWithoutOwner (/private/var/folders/yq/27jj750d0s3d7v5fn6jsn0640000gn/T/AppTranslocation/05068644-B176-4A07-839B-C6BD1D9C1A7D/d/tdeheroes.app/Contents/Resources/app.asar/node_modules/react-dom/lib/ReactCompositeComponent.js:304:14)
at ReactCompositeComponentWrapper._constructComponent (/private/var/folders/yq/27jj750d0s3d7v5fn6jsn0640000gn/T/AppTranslocation/05068644-B176-4A07-839B-C6BD1D9C1A7D/d/tdeheroes.app/Contents/Resources/app.asar/node_modules/react-dom/lib/ReactCompositeComponent.js:279:21)
at ReactCompositeComponentWrapper.mountComponent (/private/var/folders/yq/27jj750d0s3d7v5fn6jsn0640000gn/T/AppTranslocation/05068644-B176-4A07-839B-C6BD1D9C1A7D/d/tdeheroes.app/Contents/Resources/app.asar/node_modules/react-dom/lib/ReactCompositeComponent.js:187:21)
at Object.mountComponent (/private/var/folders/yq/27jj750d0s3d7v5fn6jsn0640000gn/T/AppTranslocation/05068644-B176-4A07-839B-C6BD1D9C1A7D/d/tdeheroes.app/Contents/Resources/app.asar/node_modules/react-dom/lib/ReactReconciler.js:45:35)
exports.sortByGroupName @ /private/var/folders/yq/27jj750d0s3d7v5fn6jsn0640000gn/T/AppTranslocation/05068644-B176-4A07-839B-C…:46
sort @ /private/var/folders/yq/27jj750d0s3d7v5fn6jsn0640000gn/T/AppTranslocation/05068644-B176-4A07-839B-C…:100
BelongingsSheet @ /private/var/folders/yq/27jj750d0s3d7v5fn6jsn0640000gn/T/AppTranslocation/05068644-B176-4A07-839B-C…:37
(anonymous) @ /private/var/folders/yq/27jj750d0s3d7v5fn6jsn0640000gn/T/AppTranslocation/05068644-B176-4A07-839B-C…:305
measureLifeCyclePerf @ /private/var/folders/yq/27jj750d0s3d7v5fn6jsn0640000gn/T/AppTranslocation/05068644-B176-4A07-839B-C…:75
_constructComponentWithoutOwner @ /private/var/folders/yq/27jj750d0s3d7v5fn6jsn0640000gn/T/AppTranslocation/05068644-B176-4A07-839B-C…:304
_constructComponent @ /private/var/folders/yq/27jj750d0s3d7v5fn6jsn0640000gn/T/AppTranslocation/05068644-B176-4A07-839B-C…:279
mountComponent @ /private/var/folders/yq/27jj750d0s3d7v5fn6jsn0640000gn/T/AppTranslocation/05068644-B176-4A07-839B-C…:187
mountComponent @ /private/var/folders/yq/27jj750d0s3d7v5fn6jsn0640000gn/T/AppTranslocation/05068644-B176-4A07-839B-C…:45
mountChildren @ /private/var/folders/yq/27jj750d0s3d7v5fn6jsn0640000gn/T/AppTranslocation/05068644-B176-4A07-839B-C…:236
_createInitialChildren @ /private/var/folders/yq/27jj750d0s3d7v5fn6jsn0640000gn/T/AppTranslocation/05068644-B176-4A07-839B-C…:703
mountComponent @ /private/var/folders/yq/27jj750d0s3d7v5fn6jsn0640000gn/T/AppTranslocation/05068644-B176-4A07-839B-C…:522
mountComponent @ /private/var/folders/yq/27jj750d0s3d7v5fn6jsn0640000gn/T/AppTranslocation/05068644-B176-4A07-839B-C…:45
mountChildren @ /private/var/folders/yq/27jj750d0s3d7v5fn6jsn0640000gn/T/AppTranslocation/05068644-B176-4A07-839B-C…:236
_createInitialChildren @ /private/var/folders/yq/27jj750d0s3d7v5fn6jsn0640000gn/T/AppTranslocation/05068644-B176-4A07-839B-C…:703
mountComponent @ /private/var/folders/yq/27jj750d0s3d7v5fn6jsn0640000gn/T/AppTranslocation/05068644-B176-4A07-839B-C…:522
mountComponent @ /private/var/folders/yq/27jj750d0s3d7v5fn6jsn0640000gn/T/AppTranslocation/05068644-B176-4A07-839B-C…:45
mountChildren @ /private/var/folders/yq/27jj750d0s3d7v5fn6jsn0640000gn/T/AppTranslocation/05068644-B176-4A07-839B-C…:236
_createInitialChildren @ /private/var/folders/yq/27jj750d0s3d7v5fn6jsn0640000gn/T/AppTranslocation/05068644-B176-4A07-839B-C…:703
mountComponent @ /private/var/folders/yq/27jj750d0s3d7v5fn6jsn0640000gn/T/AppTranslocation/05068644-B176-4A07-839B-C…:522
mountComponent @ /private/var/folders/yq/27jj750d0s3d7v5fn6jsn0640000gn/T/AppTranslocation/05068644-B176-4A07-839B-C…:45
performInitialMount @ /private/var/folders/yq/27jj750d0s3d7v5fn6jsn0640000gn/T/AppTranslocation/05068644-B176-4A07-839B-C…:370
mountComponent @ /private/var/folders/yq/27jj750d0s3d7v5fn6jsn0640000gn/T/AppTranslocation/05068644-B176-4A07-839B-C…:257
mountComponent @ /private/var/folders/yq/27jj750d0s3d7v5fn6jsn0640000gn/T/AppTranslocation/05068644-B176-4A07-839B-C…:45
performInitialMount @ /private/var/folders/yq/27jj750d0s3d7v5fn6jsn0640000gn/T/AppTranslocation/05068644-B176-4A07-839B-C…:370
mountComponent @ /private/var/folders/yq/27jj750d0s3d7v5fn6jsn0640000gn/T/AppTranslocation/05068644-B176-4A07-839B-C…:257
mountComponent @ /private/var/folders/yq/27jj750d0s3d7v5fn6jsn0640000gn/T/AppTranslocation/05068644-B176-4A07-839B-C…:45
mountChildren @ /private/var/folders/yq/27jj750d0s3d7v5fn6jsn0640000gn/T/AppTranslocation/05068644-B176-4A07-839B-C…:236
_createInitialChildren @ /private/var/folders/yq/27jj750d0s3d7v5fn6jsn0640000gn/T/AppTranslocation/05068644-B176-4A07-839B-C…:703
mountComponent @ /private/var/folders/yq/27jj750d0s3d7v5fn6jsn0640000gn/T/AppTranslocation/05068644-B176-4A07-839B-C…:522
mountComponent @ /private/var/folders/yq/27jj750d0s3d7v5fn6jsn0640000gn/T/AppTranslocation/05068644-B176-4A07-839B-C…:45
performInitialMount @ /private/var/folders/yq/27jj750d0s3d7v5fn6jsn0640000gn/T/AppTranslocation/05068644-B176-4A07-839B-C…:370
mountComponent @ /private/var/folders/yq/27jj750d0s3d7v5fn6jsn0640000gn/T/AppTranslocation/05068644-B176-4A07-839B-C…:257
mountComponent @ /private/var/folders/yq/27jj750d0s3d7v5fn6jsn0640000gn/T/AppTranslocation/05068644-B176-4A07-839B-C…:45
updateChildren @ /private/var/folders/yq/27jj750d0s3d7v5fn6jsn0640000gn/T/AppTranslocation/05068644-B176-4A07-839B-C…:121
_reconcilerUpdateChildren @ /private/var/folders/yq/27jj750d0s3d7v5fn6jsn0640000gn/T/AppTranslocation/05068644-B176-4A07-839B-C…:206
_updateChildren @ /private/var/folders/yq/27jj750d0s3d7v5fn6jsn0640000gn/T/AppTranslocation/05068644-B176-4A07-839B-C…:310
updateChildren @ /private/var/folders/yq/27jj750d0s3d7v5fn6jsn0640000gn/T/AppTranslocation/05068644-B176-4A07-839B-C…:297
_updateDOMChildren @ /private/var/folders/yq/27jj750d0s3d7v5fn6jsn0640000gn/T/AppTranslocation/05068644-B176-4A07-839B-C…:942
updateComponent @ /private/var/folders/yq/27jj750d0s3d7v5fn6jsn0640000gn/T/AppTranslocation/05068644-B176-4A07-839B-C…:760
receiveComponent @ /private/var/folders/yq/27jj750d0s3d7v5fn6jsn0640000gn/T/AppTranslocation/05068644-B176-4A07-839B-C…:722
receiveComponent @ /private/var/folders/yq/27jj750d0s3d7v5fn6jsn0640000gn/T/AppTranslocation/05068644-B176-4A07-839B-C…:124
_updateRenderedComponent @ /private/var/folders/yq/27jj750d0s3d7v5fn6jsn0640000gn/T/AppTranslocation/05068644-B176-4A07-839B-C…:753
_performComponentUpdate @ /private/var/folders/yq/27jj750d0s3d7v5fn6jsn0640000gn/T/AppTranslocation/05068644-B176-4A07-839B-C…:723
updateComponent @ /private/var/folders/yq/27jj750d0s3d7v5fn6jsn0640000gn/T/AppTranslocation/05068644-B176-4A07-839B-C…:644
performUpdateIfNecessary @ /private/var/folders/yq/27jj750d0s3d7v5fn6jsn0640000gn/T/AppTranslocation/05068644-B176-4A07-839B-C…:560
performUpdateIfNecessary @ /private/var/folders/yq/27jj750d0s3d7v5fn6jsn0640000gn/T/AppTranslocation/05068644-B176-4A07-839B-C…:156
runBatchedUpdates @ /private/var/folders/yq/27jj750d0s3d7v5fn6jsn0640000gn/T/AppTranslocation/05068644-B176-4A07-839B-C…:150
perform @ /private/var/folders/yq/27jj750d0s3d7v5fn6jsn0640000gn/T/AppTranslocation/05068644-B176-4A07-839B-C…:143
perform @ /private/var/folders/yq/27jj750d0s3d7v5fn6jsn0640000gn/T/AppTranslocation/05068644-B176-4A07-839B-C…:143
perform @ /private/var/folders/yq/27jj750d0s3d7v5fn6jsn0640000gn/T/AppTranslocation/05068644-B176-4A07-839B-C…:89
flushBatchedUpdates @ /private/var/folders/yq/27jj750d0s3d7v5fn6jsn0640000gn/T/AppTranslocation/05068644-B176-4A07-839B-C…:172
closeAll @ /private/var/folders/yq/27jj750d0s3d7v5fn6jsn0640000gn/T/AppTranslocation/05068644-B176-4A07-839B-C…:209
perform @ /private/var/folders/yq/27jj750d0s3d7v5fn6jsn0640000gn/T/AppTranslocation/05068644-B176-4A07-839B-C…:156
batchedUpdates @ /private/var/folders/yq/27jj750d0s3d7v5fn6jsn0640000gn/T/AppTranslocation/05068644-B176-4A07-839B-C…:62
batchedUpdates @ /private/var/folders/yq/27jj750d0s3d7v5fn6jsn0640000gn/T/AppTranslocation/05068644-B176-4A07-839B-C…:97
dispatchEvent @ /private/var/folders/yq/27jj750d0s3d7v5fn6jsn0640000gn/T/AppTranslocation/05068644-B176-4A07-839B-C…:147
[Violation] 'click' handler took 263ms

Removing Dis-/Advantages does not reduce the counter

Version 0.49.2 win10 x64
German / English
The counter ( x / 80 AP for dis-/advantages ) is not reduced by the costs of removed dis-/advantages during character creation. Instead the costs are added.
The only option to reduce the counter is to use the "step back" button.
This is especially inconvenient if you add an advantage, add some skill points and then want to remove the advantage to free up some AP.

Build for macOS

I'm currently trying to figure out how to build for macOS as I do not have a Mac. I found a person who could help me building for Mac, but we ran into some problems. Hope we can fix them so that I could deploy it to the Scriptorium as well.

Astral points and magic page missing for "intuitiver Zauberer"

Hi, I'm using the latest version 0.49.1.
I've created an "intuitiver Zauberer" and was able to select "Zaubertricks". However, the character sheet does not include a page that lists the "Zaubertricks". Furthermore, my character has no astral energy.

Abilities for (dis)advantages are not choosable.

English tl:dr: You can't choose an ability for advantages or disadvantages when those require one.
(I'll stick to german for the long explanation because it's far easier to report in my main language (obviously))

Beim Versuch meinen Charakter zu erstellen bin ich zu dem Problem gekommen, dass die Vorteile "Begabung", "Herausragende Fertigkeit" und "Herausragende Kampftechnik", ebenso wie der Nachteil "Unbegabt" nicht die Auswahl eines entsprchenden Fertigkeit zulassen. Da aber anscheinend eine entsprechende Eingabe nötig ist, um den Vorteil/Nachteil hinzuzufügen, sind diese nicht hinzufügbar.

Bsp:
1

Add talents for Maraskanian Warrior

TDE5 Heroes Client v0.47.1
When you create an Experienced (1100 AP) hero and pick Tulamydes > Maraskan > Warrior you do not proceed to the attributes and get stuck on the cultural screen instead.

Language change crashes character creation

After using my program in german for a while I tried to make an english character. After changing the language and restarting the client I clicked "create". I selected my stats (irrelevant. All combinations lead to crash) and pressed "start" the program crashed.
fehler

Werte werden falsch berechnet

AW sollte 9 sein (Verbessertes Ausweichen 1, GE 15), ist aber 8.
IN sollte 16 sein (MU 14 + GE 15)/2 ist aber 15
GS ist 8 sollte 9 sein. Habe ich einen Fehler in der Rechnung gemacht?
Ich habe die tulamidische Diebin (Regelwerk S. 71) nachgebaut und noch 91 AP übrig.
Version 48.1 glaub ich

Wrong Requirements for "Jäger"

Die Sonderfertigkeit Jäger ist erst mit einem Menschenkenntniswert von 4 auswählbar. Vermutlich ist eine der Voraussetzungen falsch gesetzt.

Cannot add ranged weapons

If I want to add a ranged weapon, the "save"-button stays greyed out. This also happens if you are using a template like the "Balläster-Armbrust".

Version 0.47.3

Hero Editor

You should be able to remove or add entries after character creation. A Hero Editor should solve this issue amongst other issues such as changing AP spent and AP total. This editor will take care of the entries' dependencies/prerequisites, too.

Apply language changes immediately

TDE5 Heroes Client v0.47.1
While switching the interface language, the changes apply only after you reopen the file.
I think it would be better to switch the language right after the user resets it. Or at least inform the user that the file has to be reopened.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.