Code Monkey home page Code Monkey logo

alpha-rome0 / anki-quake3 Goto Github PK

View Code? Open in Web Editor NEW

This project forked from luc-vocab/anki-quake3

7.0 1.0 0.0 77.88 MB

Use Anki and Quake3 together to gamify your flashcards study sessions

License: GNU General Public License v2.0

Makefile 0.45% C 93.82% C++ 2.35% CMake 0.10% Objective-C 1.60% Assembly 0.37% Shell 0.26% GLSL 0.31% HTML 0.39% Roff 0.12% Yacc 0.02% NSIS 0.07% Python 0.07% Perl 0.06% Rich Text Format 0.01% VBScript 0.01%

anki-quake3's Introduction

Updates

  • added Team Arena support
  • added CTF support
  • added support for Powerup pickups
  • You now keep your hard earned ammo when respawning.

Installation

  1. Download this source and build it. Instructions here: http://wiki.ioquake3.org/Building_ioquake3
  2. Follow instructions below

Anki Quake 3

This project is a fork of IOQuake3 (http://ioquake3.org) designed for learning gamification in conjunction with the Anki flashcard software package (https://apps.ankiweb.net/).

Basics

  • You can start single player games with bots using this special build of IOQuake3
  • You will not be able to pick up any weapons, ammo or powerups off the ground. You will have to earn those by doing Anki reviews. Bots will pick up items/weapons and shoot you with them though.
  • You start the game with a Railgun and Rocket Launcher, with no ammo. You can request ammo for them at the cost of 5 anki reviews for each ammo pack (this is configurable).
  • Similarly, you can request Health or Armor.
  • When you request items, the bots become paused and will not attack you.
  • You can then alt-tab into Anki, which has been notified of your target review count.
  • Perform all your reviews in Anki.

Anki Quake 3 screenshot

Limitations

Setup

  • copy all *.pk3 files from your Steam install (C:\Program Files (x86)\Steam\steamapps\common\Quake 3 Arena\baseq3) into anki-quake3/baseq3
  • Launch the game once so that it'll create a user profile (start ioquake3.x86_64.exe), but exit right away as we need to do some more setup
  • After exiting, open windows explorer and paste this path: %APPDATA%/Quake3/baseq3
  • Open q3config.cfg in a text editor, and add the following lines at the bottom (you can change the key bindings)
    • bind r "request_rail" //this requests rail slugs, and starts review mode (pauses bots). You can press it multiple times
    • bind t "request_rockets" //this requests rockets, and starts review mode (pauses bots)
    • bind f "request_health" //this requests health, and starts review mode (pauses bots)
    • bind g "request_armor" //this requests armor, and starts review mode (pauses bots)
    • bind q "anki_decrement" //if you want to use software other than Anki, you can use this key to manually fulfill reviews
  • Copy the Anki add-on script (https://raw.githubusercontent.com/lucwastiaux/anki-quake3/master/code/python/Anki_Quake3.py) into %APPDATA%\Roaming\Anki2\addons
  • Start-up Anki, you should see a red bar at the top saying Quake III Anki - Waiting for connection
  • You are now ready to start a game, launch the game using ioquake3.x86_64.exe +set sv_pure 0 +set vm_cgame 0 +set vm_game 0 +set vm_ui 0 (those command-line parameters are important, otherwise IOQuake3 may end up using code from the Steam install)
  • Start a single player game. Wait a bit for the bots to join
  • Alt-tab into Anki. You should see a red progress bar at the top showing how many reviews you have to do. Do your reviews and when you alt-tab into Quake3, you should now have 5 railgun slugs.

Optional setup

Anki and Quake3 need two-way communication, and this is done using UDP sockets. Quake3 will open one on port 27960. The python script running the Anki add-on will open one on port 27975. This is configurable at the top of Anki_Quake3.py. You can change these ports if necessary.

This configuration entry (to be placed in q3config.cfg) allows you to change the host/port anki is listening on. seta cl_ankiHostPort "127.0.0.1:27975"

anki-quake3's People

Contributors

zturtleman avatar timangus avatar lnussel avatar smiletheory avatar icculus avatar nuclearmonster avatar tjdub avatar pan7 avatar smcv avatar jeremiah-sypult avatar ensiform avatar tkoeppe avatar xhairball avatar thiloschulz avatar inolen avatar alpha-rome0 avatar mickael9 avatar richard-allen avatar cmf028 avatar jonathangray avatar man-at-arms avatar maxcrofts avatar miried avatar wolfwings avatar shearer12345 avatar ec- avatar xycaleth avatar uniqp avatar em92 avatar lonkamikaze avatar

Stargazers

Alex Ehlke avatar Kevin James O'Dea avatar  avatar Zaeburn Mercer avatar Will avatar Matt avatar Jamie avatar

Watchers

James Cloos avatar

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.