GithubHelp home page GithubHelp logo

cc9cii / openmw Goto Github PK

View Code? Open in Web Editor NEW

This project forked from zinnschlag/openmw

32.0 32.0 1.0 76.24 MB

OpenMW is an unofficial open source engine reimplementation of the game Morrowind.

Home Page: http://openmw.org/wiki/index.php?title=Main_Page

Shell 0.05% CMake 1.86% C++ 96.53% C 0.19% Makefile 0.01% GLSL 0.21% TeX 0.63% ShaderLab 0.52%

openmw's People

Contributors

am0s avatar ananace avatar athile avatar blunted2night avatar cc9cii avatar emperorarthur avatar glorf avatar greye avatar gugus avatar jefhai avatar jhooks1 avatar joelgraff avatar jordan-ayers avatar jordanmilne avatar jpn avatar kcat avatar korslund avatar lgromanowski avatar miroslavr avatar mrcheko avatar nikolaykasyanov avatar pakanek avatar potatoesmaster avatar sirherrbatka avatar smbas avatar swick avatar thoronador avatar werdanith avatar wheybags avatar zinnschlag avatar

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  avatar  avatar  avatar  avatar

Watchers

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

Forkers

dankdonk

openmw's Issues

Exception: invalid ID when attempting to edit a new NPC record

Console message:

An exception has been caught: invalid ID:

This occurs when a new game is created and an NPC is added from the Objects table. This is caused by the NPC autocalc code looking for non-existent values of race and class. A straight-forward solution is to skip autocalc if race/class values are not found, but ideally the user should be notified about this (else the user might be wondering why the autocalc values are not populated)

Exception: invalid ID when editing a Cell from the context menu of Topic Infos table

Console message:

An exception has been caught: invalid ID: Dagon Fel

Stack trace:

>   openmw-cs.exe!CSMWorld::Collection<CSMWorld::Cell,CSMWorld::IdAccessor<CSMWorld::Cell> >::getIndex(const std::basic_string<char,std::char_traits<char>,std::allocator<char> > & id) Line 265    C++
    openmw-cs.exe!CSMWorld::IdTable::getModelIndex(const std::basic_string<char,std::char_traits<char>,std::allocator<char> > & id, int column) Line 159    C++
    openmw-cs.exe!CSVWorld::SimpleDialogueSubView::SimpleDialogueSubView(const CSMWorld::UniversalId & id, CSMDoc::Document & document) Line 748    C++
    openmw-cs.exe!CSVWorld::DialogueSubView::DialogueSubView(const CSMWorld::UniversalId & id, CSMDoc::Document & document, const CSVWorld::CreatorFactoryBase & creatorFactory, bool sorting) Line 889 C++
    openmw-cs.exe!CSVDoc::SubViewFactoryWithCreator<CSVWorld::DialogueSubView,CSVWorld::CreatorFactory<CSVWorld::CellCreator,1> >::makeSubView(const CSMWorld::UniversalId & id, CSMDoc::Document & document) Line 47   C++
    openmw-cs.exe!CSVDoc::SubViewFactoryManager::makeSubView(const CSMWorld::UniversalId & id, CSMDoc::Document & document) Line 37 C++
    openmw-cs.exe!CSVDoc::View::addSubView(const CSMWorld::UniversalId & id, const std::basic_string<char,std::char_traits<char>,std::allocator<char> > & hint) Line 577    C++
    openmw-cs.exe!CSVDoc::View::qt_static_metacall(QObject * _o, QMetaObject::Call _c, int _id, void * * _a) Line 148   C++
    QtCored4.dll!QMetaObject::activate(QObject * sender, const QMetaObject * m, int local_signal_index, void * * argv) Line 3567    C++
    openmw-cs.exe!CSVDoc::SubView::focusId(const CSMWorld::UniversalId & _t1, const std::basic_string<char,std::char_traits<char>,std::allocator<char> > & _t2) Line 118    C++
    openmw-cs.exe!CSVWorld::TableSubView::editRequest(const CSMWorld::UniversalId & id, const std::basic_string<char,std::char_traits<char>,std::allocator<char> > & hint) Line 115 C++
    openmw-cs.exe!CSVWorld::TableSubView::qt_static_metacall(QObject * _o, QMetaObject::Call _c, int _id, void * * _a) Line 60  C++
    QtCored4.dll!QMetaObject::activate(QObject * sender, const QMetaObject * m, int local_signal_index, void * * argv) Line 3567    C++
    openmw-cs.exe!CSVWorld::Table::editRequest(const CSMWorld::UniversalId & _t1, const std::basic_string<char,std::char_traits<char>,std::allocator<char> > & _t2) Line 157    C++
    openmw-cs.exe!CSVWorld::Table::editCell() Line 527  C++

Here 'Dagon Fel' is the cell Name and its ID is actually '#7 22'.

A quick workaround is to check for Type_Cell in CSVWorld::SimpleDialogueSubView::SimpleDialogueSubView() and process differently here when calling getModelIndex():

    mEditWidget = new EditWidget(mainWidget,
              mTable->getModelIndex(getUniversalId().getId(), 0).row(), mTable, mCommandDispatcher, document,   false);

Or a better solution might be to create UniversalId with the cell's id rather than its name. Interestingly CSMWorld::CommandDispatcher::getExtendedTypes() already has some special handling for Type_Cells.
Maybe CSVWorld::TableEditIdAction::getCellData() needs to convert the display string to the cell id?

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.